sshuttle/README.rst

125 lines
2.6 KiB
ReStructuredText
Raw Normal View History

sshuttle: where transparent proxy meets VPN meets ssh
=====================================================
As far as I know, sshuttle is the only program that solves the following
common case:
2015-11-15 07:17:16 +01:00
- Your client machine (or router) is Linux, FreeBSD, or MacOS.
2015-11-15 07:17:16 +01:00
- You have access to a remote network via ssh.
2015-11-15 07:17:16 +01:00
- You don't necessarily have admin access on the remote network.
2015-11-15 07:17:16 +01:00
- The remote network has no VPN, or only stupid/complex VPN
protocols (IPsec, PPTP, etc). Or maybe you *are* the
admin and you just got frustrated with the awful state of
VPN tools.
2015-11-15 07:17:16 +01:00
- You don't want to create an ssh port forward for every
single host/port on the remote network.
2015-11-15 07:17:16 +01:00
- You hate openssh's port forwarding because it's randomly
slow and/or stupid.
2015-11-15 07:17:16 +01:00
- You can't use openssh's PermitTunnel feature because
it's disabled by default on openssh servers; plus it does
TCP-over-TCP, which has `terrible performance`_.
2021-09-22 14:13:22 +02:00
.. _terrible performance: https://sshuttle.readthedocs.io/en/stable/how-it-works.html
Obtaining sshuttle
------------------
2013-01-21 00:00:54 +01:00
2020-07-24 17:38:16 +02:00
- Ubuntu 16.04 or later::
apt-get install sshuttle
- Debian stretch or later::
apt-get install sshuttle
2021-09-22 14:13:22 +02:00
- Arch Linux::
pacman -S sshuttle
2019-06-07 16:31:35 +02:00
- Fedora::
dnf install sshuttle
2021-09-22 14:13:22 +02:00
2021-09-07 00:47:12 +02:00
- openSUSE::
zypper in sshuttle
- Gentoo::
2021-09-22 14:13:22 +02:00
2021-04-26 17:22:42 +02:00
emerge -av net-proxy/sshuttle
2019-06-07 16:31:35 +02:00
2019-10-02 06:34:01 +02:00
- NixOS::
nix-env -iA nixos.sshuttle
- From PyPI::
sudo pip install sshuttle
- Clone::
git clone https://github.com/sshuttle/sshuttle.git
cd sshuttle
sudo ./setup.py install
2019-10-23 17:18:28 +02:00
- FreeBSD::
# ports
cd /usr/ports/net/py-sshuttle && make install clean
# pkg
pkg install py36-sshuttle
2023-08-07 07:48:05 +02:00
- OpenBSD::
pkg_add sshuttle
- macOS, via MacPorts::
sudo port selfupdate
sudo port install sshuttle
It is also possible to install into a virtualenv as a non-root user.
2015-11-27 04:13:18 +01:00
- From PyPI::
2016-09-01 10:38:13 +02:00
virtualenv -p python3 /tmp/sshuttle
. /tmp/sshuttle/bin/activate
2015-11-27 04:13:18 +01:00
pip install sshuttle
2015-11-15 07:17:16 +01:00
- Clone::
2016-09-01 10:38:13 +02:00
virtualenv -p python3 /tmp/sshuttle
. /tmp/sshuttle/bin/activate
2015-11-15 07:17:16 +01:00
git clone https://github.com/sshuttle/sshuttle.git
cd sshuttle
2015-11-15 07:17:16 +01:00
./setup.py install
2013-01-21 00:00:54 +01:00
- Homebrew::
brew install sshuttle
2019-10-02 06:34:01 +02:00
- Nix::
nix-env -iA nixpkgs.sshuttle
2016-01-17 08:20:42 +01:00
Documentation
-------------
2016-01-17 08:38:43 +01:00
The documentation for the stable version is available at:
2018-06-21 03:40:02 +02:00
https://sshuttle.readthedocs.org/
2016-01-17 08:20:42 +01:00
The documentation for the latest development version is available at:
2018-06-21 03:40:02 +02:00
https://sshuttle.readthedocs.org/en/latest/
2020-05-10 06:09:21 +02:00
Running as a service
2020-06-05 00:19:24 +02:00
--------------------
2021-09-22 14:13:22 +02:00
Sshuttle can also be run as a service and configured using a config management system:
2020-06-05 00:19:24 +02:00
https://medium.com/@mike.reider/using-sshuttle-as-a-service-bec2684a65fe