ssh command line examples with openssh

SSH Remote Port Forwarding

I'm outside my firewall, I need to SSH into my Desktop in the office and HTTP to the Firewall WebUI.

ssh -L 8080:localhost:5900 guest@joes-pc

Killing Hung/Unresponsive Sessions

Sometimes your SSH sessions may hang, due to network interruption or somethings. If the session becomes unresponsive you can use these SSH Escapes to work around it.

If we take a look at this excerpt from man ssh we see that to escape just use ~..

     When a pseudo-terminal has been requested, ssh supports a number of functions through the use of an
     escape character.

     A single tilde character can be sent as ~~ or by following the tilde by a character other than those
     described below.  The escape character must always follow a newline to be interpreted as special.  The
     escape character can be changed in configuration files using the EscapeChar configuration directive or
     on the command line by the -e option.

     The supported escapes (assuming the default ‘~’) are:

     ~.      Disconnect.

     ~^Z     Background ssh.

     ~#      List forwarded connections.

     ~&      Background ssh at logout when waiting for forwarded connection / X11 sessions to terminate.

     ~?      Display a list of escape characters.

     ~B      Send a BREAK to the remote system (only useful for SSH protocol version 2 and if the peer sup‐
             ports it).

     ~C      Open command line.  Currently this allows the addition of port forwardings using the -L, -R and
             -D options (see above).  It also allows the cancellation of existing port-forwardings with
             -KL[bind_address:]port for local, -KR[bind_address:]port for remote and -KD[bind_address:]port
             for dynamic port-forwardings.  !command allows the user to execute a local command if the
             PermitLocalCommand option is enabled in ssh_config(5).  Basic help is available, using the -h
             option.

     ~R      Request rekeying of the connection (only useful for SSH protocol version 2 and if the peer sup‐
             ports it).

     ~V      Decrease the verbosity (LogLevel) when errors are being written to stderr.

     ~v      Increase the verbosity (LogLevel) when errors are being written to stderr.

See Also