Fast Remote Shell ================= The problem: logging in to a remote system with a cryptographic solution such as lsh or ssh takes time, due to the computationally expensive key exchanges that occur when the connection is established. It is common to trigger a lot of remot logins while using remote CVS, which makes it painfully slow compared to having the repository locally. The solution: reuse the secure tunnel once it has been established. fsh is a drop-in rsh-compatible replacement for ssh that automatically resuses ssh tunnels. Also included is fcp, which is a drop-in replacement for scp that uses the same tunnels. Fsh requires Python 1.5.2 or better. 1.5.1 or earlier is not good enough. Full documentation can be found in fsh.info. Installing fsh ============== See INSTALL for the standard autoconf installation instructions. The configure script understands these special options: --disable-timeout --enable-timeout=TIME If a secure tunnel is unused for a while, fshd will terminate. It will be restarted automatically the next time fsh runs. The timeout defaults to ten hours. TIME is measured in seconds. --enable-trampoline See "Known problems" below. You probably don't need this. New releases ============ Information about fsh and the latest source code can be found from: http://www.lysator.liu.se/fsh/ The source is also available via ftp: ftp://ftp.lysator.liu.se/pub/unix/fsh/ New relases are announced on the fsh-announce mailing list. To subscribe, either send an email with "subscribe" in the body to: fsh-announce-request@lists.lysator.liu.se or visit the following web page: http://lists.lysator.liu.se/mailman/listinfo/fsh-announce Known problems ============== fsh requires Python 1.5.2 or better. It uses features not found in earlier versions of Python. I could work around those problems, but I won't, since it would produce uglier code. Linux (and possibly other operating systems) don't pass the entire path of the interpreter as argv[0] when a '#!'-shell script is started. Python tries to use argv[0] to locate its supporting libraries. If it doesn't receive a full path it will look in $PATH for the first python found, and use its libraries. This can cause problems if an older version of Python is found. One solution is to re-run configure with "--enable-trampoline", which causes all fsh programs to use a workaround that involves starting an extra /bin/sh process. The workaround adds a small time penalty, but makes sure that the correct python libraries are found. See the Python FAQ for more information on this issue. Reporting bugs ============== Bugs should preferably be reported using the Bugzilla installation at http://bugzilla.lysator.liu.se/. You can also query Bugzilla for known bugs. Bugs can also be reported to fsh-bugs@lists.lysator.liu.se, if for some reason you cannot use Bugzilla. If you don't want the bug report to be public you can try ceder@lysator.liu.se instead. Expect a response time of at least one to two weeks. I have been known to reply to mail after a couple of years in the past. Mailing lists ============= There are three mailing lists devoted to fsh: fsh-info For general discussion fsh-announce Moderated list of announcements fsh-bugs For bug reporting (but please use Bugzilla instead) To more info about the lists, see http://www.lysator.liu.se/fsh/