ローカルクライアントネットワークを介してopenVPNクライアントにポートを転送する

ローカルクライアントネットワークを介してopenVPNクライアントにポートを転送する

したがって、openVPNを使用して有料VPNサービスにWD MyCloud EX2を接続しましたが、まだポート転送を使用してローカルネットワークの外部ネットワークからssh、ftp、およびplexポート(22,20-21,32400)にアクセスしたいと思います。 。 VPNサーバーにポート転送を設定できることを認識しており、プロバイダはそれを許可しますが、IPは常に変更されるため、VPNプロバイダを経由したくありません。デフォルトでは、NASが存在するローカルネットワークにいる場合(そしてopenVPNを使用してローカルネットワークにルーティングするとき)、ポートにアクセスできますが、ポートフォワーディングを使用して接続できません(NAS VPNを有効にするとすぐに停止します)。 。たとえば、いくつかの基本的なIptablesルールを試しましたが、うまくiptables -A OUTPUT -p tcp -m tcp --dport 32400 -j ACいかないようです。同様の試みに関するさまざまな投稿を見ましたが、どちらか一つのようです。 NASが特定のポートに対してopenVPNをバイパスできるようにする方法について考えている人はいますか?ありがとう

ベストアンサー1

問題はルーティングによって発生する可能性があります。ほとんどの場合、VPN プロバイダーは、デバイスがデフォルトゲートウェイとして VPN サーバーを使用するように強制するパスをプッシュします。通常はプッシュされます0.0.0.0/1128.0.0.0/1これらの2つのパスは、IPv4アドレス空間全体をカバーし、プレフィックスが大きいため(/ 24など)、直接アップストリームゲートウェイおよびローカルネットワークと通信し続けるためです。

たとえば、VPNクライアントがインターネット上のホスト(1.2.3.4など)からそのインターフェイスのパケットを受信すると、ルートと一致してeth0VPN0.0.0.0/1サーバーに送信されます。 1.2.3.4 VPN サーバのパケットが不要なため、接続を確立できません。あなたが望むのは、応答パケットがeth0最初のパケットが入ってきたのと同じ方法で出ることです。

これは、ポート転送を介してアクセスする必要があるVPNクライアントコンピュータのルーティングポリシーを介して実行できます。この同様の質問と最初の答えを参照してください。受信と同じインターフェースで応答しますか?

引用するには:

echo 200 isp2 >> /etc/iproute2/rt_tables
ip rule add from <interface_IP> dev <interface> table isp2
ip route add default via <gateway_IP> dev <interface> table isp2

おすすめ記事