sshuttle Transparent Proxy VPN

1.3.2 · active · verified Fri Apr 17

sshuttle is a transparent proxy server that acts as a 'poor man's VPN', forwarding network traffic over SSH. It doesn't require admin privileges for basic use and works across Linux and macOS, supporting DNS tunneling. The current stable version is 1.3.2, with releases occurring periodically, often driven by bug fixes and platform compatibility updates.

Common errors

Warnings

Install

Quickstart

This command will establish a transparent proxy connection to `remote_server` via SSH, routing all local traffic (0.0.0.0/0) through the remote server. Replace `user` with your SSH username and `remote_server` with the IP address or hostname of your SSH server.

sshuttle -r user@remote_server 0.0.0.0/0
# For specific subnets:
# sshuttle -r user@remote_server 192.168.1.0/24 10.0.0.0/8

# To enable DNS tunneling (requires remote_server's sshd to allow dns queries from sshuttle):
# sshuttle --dns -r user@remote_server 0.0.0.0/0

# Example using environment variables for SSH:
# export SSH_USER="your_user"
# export SSH_HOST="your_host.com"
# sshuttle -r "$SSH_USER@$SSH_HOST" 0.0.0.0/0

view raw JSON →