LSH - a GNU implementation of the Secure Shell protocols.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation. See the file COPYING for details.
If you have downloaded a release, you should be able to compile it
You need GNU make. Some shells have had bugs preventing them from
executing the configure script; if you experience problems, try
If you want to hack lsh, you need some more tools: autoconf (at least
version 2.52), automake (at least version 1.6.1), bash, gcc, gperf (at
least version 2.7) and a scheme implementation. The currently
supported schemes are guile and scsh (at least version 0.5.2). All but
scsh can be found at your local GNU mirror site. scsh, Olin Shiver's
Scheme Shell, can be downloaded from <URL: http://www.scsh.net>. If
you use guile, you also need the slib library, which is usually
distributed separately. It's also available at the GNU mirrors.
If you have checked out lsh from CVS, things are more complicated. You
must first generate Makefile.am files from the corresponding
Makefile.am.in files. Do this by running ./make_am in the top level
directory. Next, you need to run aclocal, autoconf, autoheader and
automake -a. This creates the configure script and a Makefile.in. Now
you can try ./configure ; make. If the compiler complains that it
can't find a file foo.h.x, try creating it with make foo.h.x, and
similarly for missing foo.c.x files. The misc/bootstrap.sh script
tries to do all this.
GMP (version 3.1 or better) can be found at ftp.gnu.org, or some of
ZLIB can be found at http://www.zlib.org. Latest version is
zlib-1.1.4, earlier versions of zlib have a known security problem, so
make sure you get version 1.1.4 or later.
liboop (version 0.8 or better) can be found at www.liboop.org.
After install, the first thing you need to do is creating a seed-file
for the randomness generator. Use
to create a personal seed file. If you want to run the lshd server,
you also need to run
Create a new DSS key pair, and save it in ~/.lsh/identity and
lsh-keygen -l 8 | lsh-writekey
To create a key for the server, using the server's seed-file and
storing the result as /etc/lsh_host_key and /etc/lsh_host_key.pub, run
lsh-keygen -l 8 --server | lsh-writekey --server
Start an lshd server in the background, on the default port, using the
key at /etc/lsh_host_key, created above:
Connect to an lshd server running on port 4711 on HOST, and attempt to
log in as USER:
lsh -p 4711 -l USER HOST
For more information on using LSH, read the LSH manual, doc/lsh.info
For an introduction to the inner workings of LSH, see the file
Several people have contributed to LSH, see the AUTHORS file for
If you are interested in lsh, you may want to subscribe to the
psst-list. Subscription address is firstname.lastname@example.org.
LSH releases are available at
<URL: http://www.lysator.liu.se/~nisse/archive/> and <URL:
/Niels Möller <email@example.com>