sshuttleは、SSH接続を介して転送し、リモートサーバーでPythonスクリプトを実行してプロキシを設定する透過的なプロキシサーバーです。sshuttle次の条件で実行できます。
- クライアントマシンまたはルーターはLinuxベース、FreeBSDまたはMac OS
- クライアントの管理者権限
- SSH経由のリモートネットワークへのアクセス
- リモートネットワークに管理者権限がありません
- リモートサーバーでのPythonの可用性
ソフトウェアセンターまたはターミナルからsshuttle
をインストールします。
sudo apt-get install sshuttle
すべてのトラフィックをルーティングしてsshuttleを実行するための基本的なコマンドは次のとおりです。
sshuttle -r username@sshserver:port 0/0
コマンドを実行sudoすると、パスワードプロンプトが表示され、続いてSSHアカウントのパスワードが表示されます。短いメッセージを除いて他の詳細は表示されず、失敗するとシェルに戻ります。さらにステータスメッセージを表示するsshuttleには、-vフラグを指定して詳細モードで実行します。
この例では、DNSを除くすべてのインターネットトラフィックがVPNを介してルーティングされます。-rflagは、上記の例に続くリモートホスト名とオプションのユーザー名とポートを示します。0/0は0.0.0.0/0、VPN経由でルーティングするサブネットを表す略です。0/0DNSサーバーを除くすべてのトラフィックをリモートサーバーにルーティングします。-Hフラグを使用すると、DNSチューニングが可能になります。
実行できるman sshuttleオプションとモードの詳細については、manページ()をご覧くださいsshuttle。概念とその他の例については、プロジェクトページを参照してください。