OpenSSH SSH client (remote login program)
Specifies a local “dynamic” application-level port forwarding. This works by allocating a socket
to listen to port on the local side, optionally bound to the specified bind_address. Whenever a
connection is made to this port, the connection is forwarded over the secure channel, and the
application protocol is then used to determine where to connect to from the remote machine.
Currently the SOCKS4 and SOCKS5 protocols are supported, and ssh will act as a SOCKS server. Only
root can forward privileged ports. Dynamic port forwardings can also be specified in the
IPv6 addresses can be specified by enclosing the address in square brackets. Only the superuser
can forward privileged ports. By default, the local port is bound in accordance with the
GatewayPorts setting. However, an explicit bind_address may be used to bind the connection to a
specific address. The bind_address of “localhost” indicates that the listening port be bound for
local use only, while an empty address or ‘*’ indicates that the port should be available from all
-f Requests ssh to go to background just before command execution. This is useful if ssh is going to
ask for passwords or passphrases, but the user wants it in the background. This implies -n. The
recommended way to start X11 programs at a remote site is with something like ssh -f host xterm.
If the ExitOnForwardFailure configuration option is set to “yes”, then a client started with -f
will wait for all remote port forwards to be successfully established before placing itself in the
-C Requests compression of all data (including stdin, stdout, stderr, and data for forwarded X11 and
TCP connections). The compression algorithm is the same used by gzip(1), and the “level” can be
controlled by the CompressionLevel option for protocol version 1. Compression is desirable on
modem lines and other slow connections, but will only slow down things on fast networks. The
default value can be set on a host-by-host basis in the configuration files; see the Compression
-q Quiet mode. Causes most warning and diagnostic messages to be suppressed.
-N Do not execute a remote command. This is useful for just forwarding ports (protocol version 2
ssh connects and logs into the specified hostname (with optional user name). The user must prove his/her
identity to the remote machine using one of several methods depending on the protocol version used (see
If command is specified, it is executed on the remote host instead of a login shell.