Like 1Password for ssh tunnels and VPN connections, plus sharing within a team.
Go Shell
Latest commit e736854 Jun 20, 2017 @calmh s/sha1sum/shasum/
Permalink
Failed to load latest commit information.
src/mole
vendor
.gitignore
LICENSE
README.md
build.sh

README.md

mole

Elevator Pitch

Like 1Password for ssh tunnels and VPN connections, plus sharing within a team.

Actual Documentation

On the GitHub Wiki.

What

Mole lets you seamlessly share ssh and Cisco VPN configurations so that all you need to know is the name you want to connect to. Mole will sort out any needed passwords, keys and tunnelings and set up a bunch of forwardings for you.

It'll tell you what forwardings are available and what they point to, so you can get on with real work and not have to dig around for infrastructure information.

It's based around tunnel definitions which are self contained recipes that describe how to connect to a customer or site. A tunnel definition contains:

  • Possibly, a Cisco VPN configuration.

  • Probably, one or more host definitions (name, address, username).

  • A password or SSH key for the host. This is not optional, tunnel definitions should be able to connect without user interaction.

  • A description of how to chain the hosts together to reach the final destination, i.e. jump via host A to B, from B to C and from there to D.

  • A set of port forwarding descriptions to set up once the destination is reached, with commentary on what they're for.

The tunnel definitions live server side.

All server communication is ticket authenticated and secured by TLS.

The end result of all this is that as long as you have mole installed and someone has written a tunnel definition, you can just mole dig foobar to connect all the way and get a nice list of available port forwardings presented to you.

Building

Install gb (https://github.com/constabulary/gb)

Run ./build.sh to create the binary.

Run ./build.sh all to create the distribution packages.

License

MIT