autossh - Automatically restart SSH sessions and tunnels
Update: version 1.4b fixes a bug in polling, adds a max lifetime option and a compile-time option to touch the pid file on each connection test.
Previous update: version 1.4a fixed a some Makefile bugs and an bug when creating a pid file.
Previous update: version 1.4 fixed a few bugs, added options to have autossh create a pid file and send a small custom message to the remote echo service, and gave autossh basic autoconf support.
* autossh is a program to start a copy of ssh and monitor it, restarting it as necessary should it die or stop passing traffic. The idea is from rstunnel (Reliable SSH Tunnel), but implemented in C.
* The author's view is that it is not as fiddly as rstunnel to get to work.
* Connection monitoring using a loop of port forwardings or a remote echo service.
* Backs off on rate of connection attempts when experiencing rapid failures such as connection refused.
* Compiled and tested on OpenBSD, Linux, Solaris, Mac OS X, Cygwin, and AIX; should work on other BSDs.
* Use with "screen" for perpetual session (see included script "rscreen").
* Bugs still not found.
If you use OpenBSD or FreeBSD, autossh is available in the ports tree, and as a package that can be FTP'd down. Cygwin and some Linux distros also have it available as a package.
To build from source:
* download autossh-1.4b.tgz (md5/sha1/rmd160)
* gunzip -c autossh-1.4b.tgz | tar xvf -
* cd autossh-1.4b
* copy binary to where you wish it, or "make install" will install it under /usr/local by default.
* examine autossh.host for example wrapper script and options