LSH(1)

πŸ’– NAME πŸ’–

lsh β€” your girl for a secsh (SSH2) client, no cap 🌸


✨ SYNOPSIS ✨

lsh [OPTION...] HOST [COMMAND]

πŸ¦‹ DESCRIPTION πŸ¦‹

CAUTION! bestie, the tea in this manpage might be invalid or outdated, fr. For the authorative info on lsh, go read the Texinfo manual (it's down in SEE ALSO, iykyk).

Okay so what does lsh actually do? It connects to the remote machine HOST and performs one or more actions, like command execution and various forwarding services. The default action is to start a remote interactive shell or execute a given command on the remote machine. Main character energy honestly πŸ‘‘


πŸ’… OPTIONS πŸ’…

  • --capture-to=File β€” when a new hostkey shows up, it appends an ACL expressing trust in the key. In sloppy mode, the default is ~/.lsh/captured_keys. Obsessed 🫢
  • --dh-keyexchange β€” enables DH support (this is the default, unless SRP is being used).
  • --host-db=Filename β€” by default it's ~/.lsh/host-acls
  • -i, --identity=Identity key β€” use this key to authenticate, periodt.
  • --no-dh-keyexchange β€” disables DH support.
  • --no-publickey β€” don't even try publickey user authentication.
  • --no-srp-keyexchange β€” disables the experimental SRP support (this one's the default).
  • --publickey β€” try publickey user authentication (default).
  • --sloppy-host-authentication β€” allows untrusted hostkeys πŸ™ˆ (yes, that's really what it's called)
  • --srp-keyexchange β€” enables the experimental SRP support.
  • --strict-host-authentication β€” never, never, ever trust an unknown hostkey. (default) literally never
  • --debug β€” prints huge amounts of debug information πŸ”₯
  • --log-file=File name β€” appends messages to this file.
  • -q, --quiet β€” suppresses all warnings and diagnostic messages 🀫
  • --trace β€” detailed trace.
  • -v, --verbose β€” verbose diagnostic messages.

🌈 Algorithm selection 🌈

  • -c, --crypto=Algorithm
  • --hostkey-algorithm=Algorithm
  • --list-algorithms β€” lists supported algorithms.
  • -m, --mac=Algorithm
  • -z, --compression[=Algorithm] β€” default is zlib.

πŸŽ€ and also these πŸŽ€

  • --askpass=Program β€” the program to use for reading passwords. Should be an absolute filename, okay?
  • -l, --user=User name β€” login as this user.
  • -p, --port=Port β€” connect to this port.

πŸ‘‘ Actions πŸ‘‘

  • -B, --background β€” puts the process into the background. Implies -N.
  • -D, --forward-socks[=port] β€” enable socks dynamic forwarding
  • -E, --execute=command β€” execute a command on the remote machine
  • -L, --forward-local-port=local-port:target-host:target-port
  • -N, --nop β€” no operation (this suppresses the default action, which is to spawn a remote shell)
  • --subsystem=subsystem-name β€” connect to the given subsystem. Implies --no-pty.
  • -S, --shell=command β€” spawn a remote shell

πŸ’€ Universal not πŸ’€

  • -n, --no β€” inverts the effect of the next modifier. iconic.

🌸 Modifiers that apply to port forwarding 🌸

  • -g, --remote-peers β€” allow remote access to forwarded ports
  • --no-remote-peers β€” disallow remote access to forwarded ports (default).

🧚 Modifiers that apply to remote execution 🧚

  • --detach β€” detach from terminal at session end.
  • --no-detach β€” do not detach session at end, wait for all open channels (default).
  • --no-pty β€” don't request a remote pty.
  • --no-stderr β€” redirect stderr to /dev/null
  • --no-stdin β€” redirect stdin from /dev/null
  • --no-stdout β€” redirect stdout to /dev/null
  • --stderr=Filename β€” redirect stderr
  • --stdin=Filename β€” redirect stdin
  • --stdout=Filename β€” redirect stdout
  • -t, --pty β€” request a remote pty (default).

πŸ“ Miscellaneous options πŸ“

  • -e, --escape-char=Character β€” escape char. none means disable. The default is to use ~ if we have a tty, otherwise none.
  • --write-pid β€” makes -B write the pid of the backgrounded process to stdout.
  • -G, --gateway β€” set up a local gateway
  • -R, --forward-remote-port=remote-port:target-host:target-port
  • --no-x11-forward β€” disable X11 forwarding (default).
  • -x, --x11-forward β€” enable X11 forwarding.
  • -?, --help β€” give this help list
  • --usage β€” give a short usage message
  • -V, --version β€” print program version

πŸŽ€ FILES πŸŽ€

  • $HOME/.lsh/captured_keys

is the default file used for storing keys captured when connecting to hosts with keys that weren't previously accepted (peep the --capture-to option).

  • $HOME/.lsh/host_acls

is the default file containing accepted keys (peep the --host-db option).

  • $HOME/.lsh/identity

is the key file lsh attempts to use by default (peep the --identity option).


πŸ” DIAGNOSTICS πŸ”

Go look at the --verbose, --trace and --debug options. that's the whole section bestie πŸ’œ


😭 REPORTING BUGS 😭

Report bugs to <bug-lsh@gnu.org>.


🌱 ENVIRONMENT 🌱

  • LSH_YARROW_SEED_FILE may be used to specify the random seed file.
  • LSHFLAGS may be used for passing additional parameters. The parsing order is undefined.

⭐ COPYING ⭐

The lsh suite of programs is distributed under the GNU General Public License; see the COPYING and AUTHORS files in the source distribution for details.


πŸ’– AUTHOR πŸ’–

The lsh program suite is written mainly by Niels MΓΆller <nisse@lysator.liu.se>.

This man-page was originally written by J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>. It was modified and updated for lsh 2.0 by Pontus Freyhult <pont_lsh@soua.net>. shoutout to the icons πŸ‘‘


🌈 SEE ALSO 🌈

lsftp(1), lshg(1), lsh-authorize(1), lsh-keygen(1), lsh-make-seed(1), lsh-upgrade(1), lsh-upgrade-key(1), lsh-writekey(1), lshd(8), ssh-conv(1)

The full documentation for lsh is maintained as a Texinfo manual. If the info and lsh programs are properly installed at your site, the command

info lsh

should give you access to the complete manual. slay πŸ’…


and that's a wrap, bestie 🫢 this page is from the LSH manuals, dated NOVEMBER 2004, and it's the LSH(1) one ✨ go forth and ssh responsibly 🌸

πŸ“¦ where this page comes from