Wrapper daemon to manage an ssh tunnel (Haskell)


This is a daemon that executes an ssh command to form a secure tunnel and then blocks on it. If the tunnel goes down, sshtun will attempt to reestablish it. It can also be set up to monitor a file on an http server to determine if the tunnel should be up or not, so you can switch it on or off remotely.

It's this last behavior, the switching on and off remotely, that makes this project differ from the simpler sshtun shell script I wrote. The switching behavior together with blocking on the tunnel requires separate threads and so I attacked the problem with Haskell.

For usage information and more details, see the project's README file

Getting source

And once you have it, building the usual way:

$ cabal configure
$ cabal build
$ cabal install


Build and install with cabal-install: $ cabal update ; cabal install sshtun


Dino Morelli <>