SSH Tunnel Gateway with Autossh and Docker
What is this tool for?
- Allow you to tunnel remote targets through multiple ssh servers
- Clients can connect to your ssh tunnel gateway on your local network
- Easy configuration (YAML)
- Easy and secure installation (Docker)
YAML sample
main:
listen: 0.0.0.0
tunnels:
- remote: username@remote_ip
ports:
# ssh
- local: 2000 # This has to match docker-compose file
remote_target: localhost
remote_port: 22
Installation
- Download on GitHub
- Install Ubuntu (or other Linux)
- Install docker
- sudo apt install docker.io
- Add your user to docker group (do not forget to relogin) - sudo usermod -a -G docker your_username
- Install docker compose
- sudo apt install curl
- sudo curl -L "https://github.com/docker/compose/releases/download/1.22.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
- sudo chmod +x /usr/local/bin/docker-compose
- Generate ssh-keys
- cd settings
- ssh-keygen -f ./id_rsa
- Edit settings/sshtunnel.yml
- Edit docker-compose.yml
- Run docker-compose build
- Try docker-compose up (after CTRL-C)
- Run docker-compose up -d (it should start after restart)