私はクライアント用の商用VPNプロバイダとしてUbuntu Server 14.04 LTSでOpenVPNを使用しています(16.04 LTSでもいくつかのテストを行いました)。ユーザーに基づいてパケットにタグを付け、これらのパケットを tun0 経由でのみルーティングするように iptables とルーティングテーブルを設定しました。他のすべてのユーザーはeth0を介してインターネットに直接アクセスできます。良い結果。 VPN 経由でルーティングするサービスをユーザー VPN として実行しており、ユーザー VPN は tun0 経由でルーティングされます。
ローカルネットワーク上のVPNユーザーとして実行されているサービスポート(つまり、ton0を介してトンネリングされている)にアクセスする方法がわかりません。具体的な例:
転送は VPN ユーザーとして実行され、 tun0 を介して完全にトンネリングされます。 Transmission Web UIのデフォルトポートは9091なので、次のコマンドを使用してWeb UIに接続できます。http://サーバーIP:9091 ただし、ポート9091にアクセスできません。ブラウザにエラーメッセージが表示されず、機能しません。 eth0からtun0のポート9091を有効にする(ルーティング?)作成するには、iptableエントリを追加する必要がありますか?私の考えが正しい場合、正しいルールと方法は何ですか? nginxリバースプロキシを使用してwebiiにアクセスできるため、転送は正常に機能します。これは、サーバーのlocalhostがポート9091にアクセスできますが、eth0を介してローカルネットワークにアクセスできないことを意味します。
WAN側のポートアクセスは不要なので、デフォルトで私が使用するVPNプロバイダとは無関係です。ローカルネットワーク(192.168.1.0/24)からのみアクセスできます。
本当に感謝し、あなたの助けと提案を楽しみにしています!