
私の VPN はポート 25 をフィルタリングしますが (スパムを防ぐため)、ISP はフィルタリングしません。VPN はすべてのトラフィックを引き継ぎ、デフォルト ゲートウェイを変更します。メールを送信するために VPN をバイパスするにはどうすればよいですか? ポート 25 を除くすべての送信トラフィックで VPN を引き続き使用したいと考えています。
私の設定:
router 192.168.0.1 (this is the default gateway when VPN is not connected)
eth0 192.168.0.185
tun0 10.8.0.202
--dport 25 を使用して iptables で何かをしようとしましたが、ファイアウォールの回避方法がよくわかりません。
Ubuntu 12.10を使用しています。
もう 1 つは、192.168.0.185 で複数のサーバー (Web、メール、SSH など) が実行されていることです。192.168.0.1 ルーターは、それらのポート (80、443、...) の要求を 192.168.0.185 に転送します。VPN がこれに干渉しないようにするには、次のコマンドを実行します。
ip rule add from 192.168.0.185 table 10
ip route add default via 192.168.0.1 table 10
メール以外のすべてのサーバーが動作し始めました (ポート 25 で同じ問題が発生したためでしょうか)。そこで、postfix を 2525 で実行するように変更し (ルーターでポート 25 をそこに転送するようにしました)、動作するようになりました。
$ route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.8.0.201 128.0.0.0 UG 0 0 0 tun0
0.0.0.0 192.168.0.1 0.0.0.0 UG 0 0 0 eth0
10.8.0.1 10.8.0.201 255.255.255.255 UGH 0 0 0 tun0
10.8.0.201 0.0.0.0 255.255.255.255 UH 0 0 0 tun0
46.21.99.21 192.168.0.1 255.255.255.255 UGH 0 0 0 eth0
128.0.0.0 10.8.0.201 128.0.0.0 UG 0 0 0 tun0
169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 eth0
192.168.0.0 0.0.0.0 255.255.255.0 U 1 0 0 eth0
答え1
2つの可能性が考えられます:
デフォルト ルートではなく、イーサネット インターフェイス経由で明示的にルーティングされる外部メール サーバーの IP アドレスに静的ルートを追加します。
送信ポート (587) 上の外部メール サーバーに送信メールを送信します。
ただし、最善の答えは、メール サーバーを VPN とは別の (仮想) マシンで実行し、トラフィックを適切にルーティングできるようにすることです。ルートは、ポート番号ではなく、IP アドレス/ネットワークでのみ指定できます。