Назад | Перейти на главную страницу

перенаправить запросы на отфильтрованный SMTP-порт 25

Мой VPN фильтрует порт 25 (для предотвращения спама), а мой интернет-провайдер - нет. 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

Я пытался использовать iptables, чтобы что-то сделать с --dport 25, но я действительно не знаю, как обойти брандмауэр.

Я использую Ubuntu 12.10.

Другое дело, что на 192.168.0.185 работает несколько серверов (веб, почта, 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. Добавьте статический маршрут к IP-адресу вашего внешнего почтового сервера, который явно маршрутизируется через интерфейс Ethernet вместо маршрута по умолчанию.

  2. Отправьте исходящую почту на внешний почтовый сервер через порт отправки (587).

Однако лучший ответ - запустить почтовый сервер на другой (виртуальной) машине, а не на VPN, чтобы вы могли правильно маршрутизировать его трафик. Маршруты можно указывать только по IP-адресу / сети, но не по номеру порта.