sshuttle
Transparent proxy server that works as a poor man's VPN. Forwards over ssh. Doesn't require admin. Works with Linux and MacOS. Supports DNS tunneling.
What it is and what it does
sshuttle is a transparent proxy that tunnels all or part of your network traffic over an SSH connection to a remote host, functioning as a lightweight VPN without requiring admin privileges on the remote network or complex VPN infrastructure. It avoids the overhead of TCP-over-TCP tunneling and eliminates the need to manually forward individual ports.
The tool works on Linux, FreeBSD, and macOS by intercepting traffic at the system level and routing it through SSH. It has no runtime dependencies beyond Python 3.9+, making it straightforward to install. It's useful when you need transparent access to a remote network but lack VPN setup capability or want to avoid the complexity of traditional VPN protocols.
Use it for:
- Access a remote corporate network over SSH when VPN is unavailable or disabled.
- Tunnel DNS queries and all traffic to a remote network without per-port configuration.
- Provide transparent network access from a router or gateway machine to a remote subnet.
- Avoid openssh port-forwarding overhead by proxying entire subnets transparently.
- Set up ad-hoc network access for development or testing without VPN infrastructure.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
sshuttle creates a transparent proxy that tunnels traffic over SSH to a remote network, acting as a lightweight VPN alternative without requiring admin access or complex VPN protocols.
Yes, if you need transparent SSH-based network access and have direct SSH connectivity to a remote host. The low install friction, no runtime dependencies, and stable codebase make it a practical choice for its specific use case. The 369-day release gap warrants checking recent activity before relying on it for critical infrastructure, but the Production/Stable classification and current Python support suggest it remains viable.
Install
sshuttle on PyPI
pip
pip install sshuttleuv
uv add sshuttlepoetry
poetry add sshuttleInstalling sshuttle
Before you install
Low install friction with no runtime dependencies. Marked as aging (369 days since last release), but classified as Production/Stable and supports current Python versions (3.9–3.12).
License in practice
Licensed under LGPL-2.1 (copyleft). You may use and modify sshuttle freely, but derivative works must also be distributed under LGPL-2.1 or compatible terms.
Quickstart
pip install sshuttle
sshuttle -r user@remote_host 0/0
Requires SSH access to a remote host and appropriate system-level networking capabilities (iptables on Linux, pfctl on macOS, or equivalent on other platforms).
Verify before relying
- Whether the 369-day gap since last release reflects active maintenance or dormancy beyond the 'aging' classification.
- Current state of Windows support mentioned in the description excerpt.
- Performance characteristics and stability in production use at scale.
Package facts
| License | LGPL-2.1 (copyleft) |
| Python support | supports the current Python release (<4.0,>=3.9) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | none |
| Maintenance | aging — 369 days since the last release |
| First released | |
| Downloads | 151,449/month — #10,932 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: sshuttle-1.3.2-py3-none-any.whl
Tags
More Networking packages
h11 is a pure-Python HTTP/1.1 protocol…
permissive · top 100 on PyPI
psutilpsutil retrieves real-time information about…
permissive · top 1,000 on PyPI
pyOpenSSLpyOpenSSL wraps OpenSSL's SSL/TLS functionality…
permissive · top 1,000 on PyPI
uvloopuvloop is a drop-in replacement for Python's…
permissive · top 1,000 on PyPI
execnetexecnet lets you spawn and communicate with…
permissive · top 1,000 on PyPI
pyzmqPyZMQ provides Python bindings for ZeroMQ…
permissive · top 1,000 on PyPI
proxmoxerProxmoxer is a Python wrapper for the Proxmox…
permissive · top 15,000 on PyPI
sshtunnelEstablishes SSH tunnels to forward local ports…
permissive · top 1,000 on PyPI
mitmproxy-windowsProvides Windows-specific traffic redirection…
copyleft · top 15,000 on PyPI
pproxypproxy is an asynchronous proxy server that…
permissive · top 15,000 on PyPI
PySocksPySocks provides a SOCKS and HTTP proxy client…
permissive · top 1,000 on PyPI
mitmproxy-wireguardImplements a user-space WireGuard server that…
permissive · top 5,000 on PyPI
mock-ssh-serverProvides a Python context manager that runs an…
permissive · top 15,000 on PyPI
asyncsshAsyncSSH provides an asynchronous SSH client…
copyleft · top 5,000 on PyPI
paramikoParamiko is a pure-Python SSH protocol library…
copyleft · top 1,000 on PyPI
pytun-pmd3Provides Python bindings to create and manage…
copyleft · top 15,000 on PyPI