blob: 003f1af84d7108fa165d6907f0c297179922062e [file] [log] [blame]
.TH DSH 1 "September 2023" "Version 1.0" "Distributed Shell"
.SH NAME
dsh \- Distributed Shell
.SH SYNOPSIS
.B dsh
[OPTIONS]... <PEER_ID>
.SH DESCRIPTION
\fBdsh\fR is a Distributed Shell program that enables peers to establish connections with other peers in a Distributed Hash Table (DHT) network and execute a binary on the remote target.
.B <PEER_ID>
is the identifiant of the target peer or device in the DHT network with which the connection should be established.
It is required when not running in listen mode.
.PP
\fBdsh\fR allows you to:
.IP
- Execute commands on remote peers in a DHT network.
- Establish connections with peers and execute binaries on their side.
.SH OPTIONS
.TP
.B \-h, \-\-help
Display help information for using \fBdsh\fR.
.TP
.B \-v, \-\-version
Display the version information of \fBdsh\fR.
.TP
.B \-l, \-\-listen
Run \fBdsh\fR in listen mode, allowing the program to accept incoming network connections and perform network-related tasks on request.
.TP
.B \-s, \-\-binary \fICOMMAND\fR
Specify the path to the binary that should be executed on the remote target when a connection is established. The default value is \fI"bash"\fR if not specified.
.TP
.B \-b, \-\-bootstrap \fIADDRESS\fR
Set the bootstrap node.
.TP
.B \-t, \-\-turn_host \fIADDRESS\fR
Define the TURN server host.
.TP
.B \-u, \-\-turn_user \fIUSER\fR
Define the TURN server username.
.TP
.B \-w, \-\-turn_pass \fISECRET\fR
Define the TURN server password.
.TP
.B \-r, \-\-turn_realm \fIREALM\fR
Specify the TURN server realm.
.TP
.B \-p, \-\-privateKey \fIFILE\fR
Provide a private key.
.TP
.B \-c, \-\-certificate \fIFILE\fR
Specify the certificate.
.TP
.B \-d, \-\-configuration \fIFILE\fR
Define the dnc configuration with a YAML file path.
.TP
.B \-a, \-\-anonymous
Activate anonymous connection mode.
.SH EXAMPLE
To connect to a remote peer and specify a custom bootstrap node, binary, and identity file, you can use the following command:
.PP
.B
dsh -b <BOOTSTRAP_ADDRESS> -s <COMMAND> -c <FILE.crt> -p <FILE.pem> <PEER_ID>
.SH SEE ALSO
.PP
.BR dnc (1),
.BR dhtnet-crtmgr (1),
.BR dshd (1)