LINUX.ORG.RU
решено ФорумAdmin

Очередной openvpn, и каскад чего-то

 , , ,


0

1

Всем привет. Ситуация такая, есть локалка, в ней есть почтовик. Переключаюсь на другой шлюз в лок.сети, который (через 3г модем) подключается к openvpn, который физически очень далеко. По сути 2 шлюза. Расшариваю сети, и... Почта ходит только входящая, исходящая никак не пробьется наружу. 25 порт на внутреннем шлюзе в сети открыл, на внешнем (с openvpn) вроде тоже, но телнет с почтовика на внешние адреса не идет. Полагаю, что проблема в отсутствии нужной строки в iptables на внешнем шлюзе с OVPN.

Подскажите, пожалуйста, чего тут не хватает?

# Generated by iptables-save v1.6.0 on Thu Nov  8 07:29:28 2018
*nat
:PREROUTING ACCEPT [12553:1043578]
:INPUT ACCEPT [2647:229029]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [808:47904]
-A PREROUTING -p tcp -m tcp --dport 25 -j DNAT --to-destination 10.8.0.6:25
-A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
COMMIT
# Completed on Thu Nov  8 07:29:28 2018
# Generated by iptables-save v1.6.0 on Thu Nov  8 07:29:28 2018
*filter
:INPUT ACCEPT [28857:4740211]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [33039:24682146]
:f2b-ssh - [0:0]
:f2b-sshd - [0:0]
-A INPUT -p tcp -m tcp --dport 25 -j ACCEPT
-A INPUT -p tcp -m multiport --dports 22 -j f2b-ssh
-A INPUT -p tcp -m multiport --dports 22 -j f2b-sshd
-A INPUT -i tun+ -j ACCEPT
-A INPUT -i tap+ -j ACCEPT
-A FORWARD -i eth+ -o tun+ -p tcp -m tcp --dport 25 -j ACCEPT
-A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -s 10.8.0.0/24 -j ACCEPT
-A FORWARD -j REJECT --reject-with icmp-port-unreachable
-A FORWARD -i tun+ -j ACCEPT
-A FORWARD -i tap+ -j ACCEPT
-A f2b-ssh -s 81.139.61.222/32 -j REJECT --reject-with icmp-port-unreachable
-A f2b-ssh -j RETURN
-A f2b-sshd -s 81.139.61.222/32 -j REJECT --reject-with icmp-port-unreachable
-A f2b-sshd -j RETURN
COMMIT

telnet с почтовика на самого себя: есть

telnet c почтовика на 10.8.0.6 (шлюз внутренний с OVPN):

telnet c почтовика на свой внешний ip: нет

telnet извне на mx-запись почтовика успешно проходит (падает в тот самый почтовик, который в локалке)

Update: обнаружено, что если убрать

-A PREROUTING -p tcp -m tcp --dport 25 -j DNAT --to-destination 10.8.0.6:25
то исходящие коннекты с почтового сервера появляются, но пропадают входящие соединения (что логично)



Последнее исправление: Aborigen1020 (всего исправлений: 2)

DNAT нужно делать с указанием ip-адреса, на который идёт соединение (белый ip-адрес).

mky ★★★★★
()
Ответ на: комментарий от mky

Нечто вроде

PREROUTING -p tcp -i eth+ -d [whiteip] --dport 25 -j DNAT --to-destination 10.8.0.6:25
не сработало как ожидалось. Неправильное правило?

Aborigen1020
() автор топика
Ответ на: комментарий от mky

Отбой. Видимо что-то перекрутил? а может интерфейс не нужно было указывать. Восстановил правила, дал:

-A PREROUTING -p tcp -m tcp -d [whiteip] --dport 25 -j DNAT --to-destination 10.8.0.6:25

И все забегало. Спасибо большое за подсказку!

Aborigen1020
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.