あなたが望むことをするには、sshuttle をお勧めします。
次のように使用します:
./sshuttle -r [email protected] 0.0.0.0/0 -vv
すべての TCP トラフィックを自動的にトンネリングします。 --dns
を追加できます DNSトラフィックもトンネリングする引数。リモート サーバーには Python がインストールされているだけで済みます。
特定のプログラムのみをトンネリングしたい場合は、プロキシチェーンをお勧めします。
インストールしたら、次のように ssh ソックス プロキシを起動します。
ssh -fNTD 127.0.0.1:<local port> [email protected]
これにより、<ローカル ポート> でリッスンする "SOCKS" プロキシが開始されます。
次に、/etc/proxychains.conf を編集して、
socks5 127.0.0.1 <localport>
最後に、次のようにプロキシするプログラムを開始します:
proxychains <program name>
それはうまくいくはずです。ただし、いくつかのプログラムでは、プロキシ チェーンを使用する際に問題が発生します。また、Firefox では、about:config の下の追加項目を変更して、プロキシをバイパスするのではなく、プロキシ経由で DNS ルックアップを実行するように強制する必要があることにも注意してください。
追加のメモとして、Web ブラウザーで。それらがソックス プロキシをサポートしている場合、上記の ssh トンネルを使用するために追加の操作を行う必要はありません。SOCKS プロキシ サーバーに 127.0.0.1 を入力し、プロキシ ポートに <ローカル ポート> を入力するだけです。
2016 年 3 月 29 日編集
この投稿にはまだいくつかの賛成票が表示されているため、更新することにしました。 Proxychains はまだほとんどの Linux リポジトリにあり、Linux でも動作します。ただし、プロジェクトは事実上放棄されており、OSX では動作しません。 Linux または OSX の場合、まだ維持されているフォークにアップグレードすることを強くお勧めします:proxychains-ng:https://github.com/rofl0r/proxychains-ng
Linux と OSX の両方で動作するだけでなく、コンパイルも簡単で、DNS トンネリングのサポートも大幅に向上しています。
もう 1 つのオプション、つまり redsocks についても言及する必要があります。これは proxychains(-ng) と同様に機能し、dist リポジトリにもある可能性があります:https://github.com/darkk/redsocks
2019 年 11 月 27 日編集 proxychains ルートに行く場合は、proxychains-ng を使用してください。 https://github.com/rofl0r/proxychains-ng/issues/292 のように、レガシー バージョンに対するいくつかの重大なバグ修正があります。
man ssh
まさにこれの例を示します。 ssh ベースの VPN:
SSH-BASED VIRTUAL PRIVATE NETWORKS
ssh contains support for Virtual Private Network (VPN) tunnelling using
the tun(4) network pseudo-device, allowing two networks to be joined
securely. The sshd_config(5) configuration option PermitTunnel controls
whether the server supports this, and at what level (layer 2 or 3 traf-
fic).
The following example would connect client network 10.0.50.0/24 with
remote network 10.0.99.0/24, provided that the SSH server running on the
gateway to the remote network, at 192.168.1.15, allows it:
# ssh -f -w 0:1 192.168.1.15 true
# ifconfig tun0 10.0.50.1 10.0.99.1 netmask 255.255.255.252
~~ 中略 ~~
Since a SSH-based setup entails a fair amount of overhead, it may be more
suited to temporary setups, such as for wireless VPNs. More permanent
VPNs are better provided by tools such as ipsecctl(8) and isakmpd(8).
新しいインターフェイスを起動したら、それをデフォルト ルートにする必要がありますが、これは別の問題です。
ssh で「トンネル」オプションを探します。これにより、IP アドレスを割り当てることができるトンネル デバイスが作成され、そのトンネルを使用するようにデフォルト ルートが変更されます。