LSHD(8)

🫢 lshd β€” the secsh (SSH2) server 🫢

okay bestie, this is the lsh manual, section 8 (system administration, iykyk), and today's main character is lshd. pull up a chair, we're getting into it. πŸ’–


✨ NAME ✨

lshd β€” a secsh (SSH2) server. that's it, that's the vibe. she serves SSH2, she's the server, she's iconic. πŸ‘‘


🌸 SYNOPSIS 🌸

lshd [OPTION...]

literally just lshd and then whatever options you're feeling. that's the whole entrance. πŸ’…


πŸ¦‹ DESCRIPTION πŸ¦‹

CAUTION! the info in this manpage may be invalid or outdated, no cap. for the authorative (their spelling, not mine, we respect it) information on lsh, please go look at its Texinfo manual instead β€” check the SEE ALSO section down below, bestie. πŸ™ˆ

lshd is a server for the SSH-2 (secsh) protocol. that's the assignment. she's out here handling secsh so you don't have to. 🫢


πŸ’… OPTIONS πŸ’…

Miscellaneous options

  • -h, --host-key=Key file β€” where the server's private key lives. the location, the spot, the address of it. πŸ”‘
  • --interface=interface β€” listen on this network interface, specifically this one.
  • -p, --port=Port β€” listen on this port. pick your port, own your port. πŸŽ€
  • --debug β€” print huge amounts of debug information. like, huge. enormous. unhinged quantities of debug. πŸ’€
  • --log-file=File name β€” append messages to this file.
  • -q, --quiet β€” suppress all warnings and diagnostic messages. she's giving silence, she's giving peace. 🀫
  • --trace β€” detailed trace.
  • -v, --verbose β€” verbose diagnostic messages.

Algorithm selection

  • -c, --crypto=Algorithm β€” pick your crypto algorithm.
  • --hostkey-algorithm=Algorithm β€” pick your hostkey algorithm.
  • --list-algorithms β€” list supported algorithms. window shopping, but for algorithms. πŸ›οΈ
  • -m, --mac=Algorithm β€” pick your mac algorithm.
  • -z, --compression[=Algorithm] β€” the default is zlib. the argument is optional, the slay is not.
  • --banner-file=File name β€” banner file to send before the handshake. first impressions matter, bestie. ✨

Keyexchange options

  • --dh-keyexchange β€” enable DH support. this is the default. βœ…
  • --no-dh-keyexchange β€” disable DH support. no DH for you. 🚫
  • --no-srp-keyexchange β€” disable experimental SRP support. this is the default.
  • --srp-keyexchange β€” enable experimental SRP support. experimental, so, y'know. πŸ‘€

User authentication options

  • --kerberos-passwords β€” recognize kerberos passwords, using the helper program "/usr/local/sbin/lsh-krb-checkpw". heads up: this option is experimental. ⚠️
  • --login-auth-mode β€” enable a telnet like mode (accept none-authentication and launch thelogin-shell, making it responsible for authenticating the user). yes, thelogin-shell is one word there, we're keeping it exactly as written, periodt.
  • --login-shell=Program β€” use this program as the login shell for all users. (Experimental)
  • --no-kerberos-passwords β€” don't recognize kerberos passwords. this is the default behaviour.
  • --no-login-auth-mode β€” disable login-auth-mode. this is the default.
  • --no-password β€” disable password user authentication.
  • --no-publickey β€” disable publickey user authentication.
  • --no-root-login β€” don't allow root to login. this is the default. πŸ›‘οΈ
  • --password β€” enable password user authentication. this is the default.
  • --password-helper=Program β€” use the named helper program for password verification. (Experimental).
  • --publickey β€” enable publickey user authentication. this is the default.
  • --root-login β€” allow root to login. (default is the opposite, see above, stay safe out there 🫢)

Offered services

  • --no-pty-support β€” disable pty allocation.
  • --no-tcpip-forward β€” disable tcpip forwarding.
  • --no-x11-forward β€” disable x11 forwarding.
  • --pty-support β€” enable pty allocation. this is the default.
  • --subsystems=List of subsystem names and programs β€” for example sftp=/usr/sbin/sftp-server,foosystem=/usr/bin/foo (experimental). look at her go. πŸ”₯
  • --tcpip-forward β€” enable tcpip forwarding. this is the default.
  • --x11-forward β€” enable x11 forwarding. this is the default.
  • --daemonic β€” run in the background, redirect stdio to /dev/null, and chdir to /. she's leaving the group chat and going off-grid. πŸŒ™
  • --enable-core β€” dump core on fatal errors (disabled by default).
  • --no-daemonic β€” run in the foreground, with messages to stderr. this is the default.
  • --no-pid-file β€” don't use any pid file. this is the default in non-daemonic mode.
  • --no-syslog β€” don't use syslog. (by default, syslog is used when running in daemonic mode.)
  • --pid-file=file name β€” create a pid file. when running in daemonic mode, the default is /var/run/lshd.pid.

the lil guys at the bottom

  • -?, --help β€” give this help list. πŸ₯Ί
  • --usage β€” give a short usage message.
  • -V, --version β€” print program version.
πŸ“Œ mandatory or optional arguments to long options are also mandatory or optional for any corresponding short options. like, the short option inherits the whole situation. it's giving inheritance. it's giving family resemblance.

πŸŽ€ FILES πŸŽ€

lshd doesn't use any traditional configuration file, bestie β€” she's not like other servers. but she must have a random seed file and the server key. by default:

  • /var/spool/lsh/yarrow-seed-file β€” used as the random seed file (see ENVIRONMENT for how to change this)
  • /etc/lsh_host_key β€” this is the default key file
  • /var/run/lshd.pid β€” used to store the process id of the server, by default

authorized keys are stored in the directory:

  • $HOME/.lsh/authorized_keys_sha1/

she's got her files, she's got her keys, she's got her seed. she's organized. πŸ—‚οΈβœ¨


πŸ” DIAGNOSTICS πŸ”

log messages are normally sent to syslog(3) when running in daemonic mode.

go check out the --verbose, --trace and --debug options if you want more tea. β˜•


😭 REPORTING BUGS 😭

report bugs to <bug-lsh@gnu.org>. be nice, be specific, include the details, bestie. 🫢


🌈 ENVIRONMENT 🌈

  • LSH_YARROW_SEED_FILE may be used to specify the random seed file.
  • lshd mimics OpenSSH behaviour with respect to SSH_CLIENT and SSH_TTY for processes it starts where applicable. she's flexible like that. πŸ’…

πŸ‘‘ 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. legal girlies, rise. ⭐


πŸ’– 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 authors, no cap. 🫑


🧚 SEE ALSO 🧚

lsftp(1), lsh(1), lsh-authorize(1), lsh-keygen(1), lsh-make-seed(1), lsh-upgrade(1), lsh-upgrade-key(1), lsh-writekey(1), secsh(5), sftp-server(8), syslogd(8)

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. go read it, it's the authorative source (their word, keeping it πŸ’…), and honestly? she ate. πŸ“šβœ¨


okay that's the whole page, bestie!! this one's from the Lsh Manuals, page LSHD(8), dated NOVEMBER 2004 β€” yeah, she's vintage, she's a classic, she's still serving. go run your server, protect your root login, and remember: read the Texinfo manual. mwah!! πŸ’‹πŸ¦‹πŸŒΈ

πŸ“¦ where this page comes from