web-dev-qa-db-ja.com

ルーターとしてのUbuntu; 1つのクライアント(LAN)からVPNにトラフィックをリダイレクトする

Ubuntu 14.04.03ルーター(iptables)を使用しています。その背後には、ラップトップ、タブレット、スマートTVなどのLANがあります。

テレビでVPNを使用したいのですが、テレビのソフトウェア/ファームウェアにそのようなオプションはありません。そのため、UbuntuルーターでVPN接続をセットアップし、すべてのトラフィックをTVからこのVPN接続にリダイレクトすることは可能だと思いました。テレビからのみ。他のデバイスからのトラフィック、およびUbuntu自体からのトラフィックは、元の接続を使用する必要があります。

できますか?

私のVPNプロバイダーはNordVPNです。それらはPPTP、L2TP、OpenVPN TCP、OpenVPN UDPおよびSOCKS5を提供します。 https://nordvpn.com/tutorials/linux/linux-openvpn/ でUbuntuにVPNをセットアップする手順を提供していますが、必要なものはカバーされていません;)。

3
Lux

まったく同じ設定を探していました。これは遅い対応だと思いますが、おそらく他の誰かが恩恵を受けることができます。

注:VPN接続のタイプはPPPで、ifconfigの下にインターフェイス_ppp0_として表示されます。

TV:マシンのIPをデフォルトゲートウェイとして使用するようにTVのネットワーク設定を構成します。

Ubuntu:マシンでIP転送とNATを次のように設定します。

_Sudo echo 1 > /proc/sys/net/ipv4/ip_forward
Sudo iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
Sudo iptables -A FORWARD -i eth0 -o ppp0 -m state --state RELATED,ESTABLISHED -j ACCEPT
Sudo iptables -A FORWARD -i ppp0 -o eth0 -j ACCEPT
_

次の2つの記事が役に立ちました。

私が少し読んだことから、私は上記のコマンドが以下を行うと信じています:

  • カーネルでIP転送を有効にする
  • NATテーブルのPOSTROUTINGチェーンターゲットを設定するルールを追加することにより、_ppp0_インターフェイスを介して出るパッケージの送信者アドレス(マスカレード)を独自のものに書き換えるようにネットワークスタックに指示します。マスカレード。
  • (デフォルト)FILTERテーブルのFORWARDチェーンターゲットをACCEPTに設定することにより、特定の接続状態に対して_eth0_からのパッケージを_ppp0_経由でルーティングできるようにします。
  • すべての状態で応答パッケージを許可します。
2
hcvst