iptables gw + postfix (Народ хелп, сделал relay из своего почтаря)

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС.

Модераторы: SLEDopit, Модераторы разделов

Demolitionman
Сообщения: 78

iptables gw + postfix

Сообщение Demolitionman »

Всем привет. недавно заменил модемный шлюз на шлюз Linux CentOS+Iptables. Все рассказывать не буду, опишу проблему. У меня в локальной сети стоит почтарь Postfix. В нем есть правило для всей фильтрации permit_mynetworks. а на шлюзе Linux CentOS+Iptables такое правило в фаерволе, для проброса порта

Код: Выделить всё

EXT_IP=88.4.6.2 #IP интернет карты
INT_IP=192.168.112.21 #IP локальной сетевой карты

EXT_IF=enp4s0 # Внешний интерфейс.
INT_IF=enp2s0 # Внутренний интерфейс.

MAILIP=192.168.112.1 #IP mail сервера

MAILPORT=80,25,110,995,443 #Пробрасываемый порт на маилсервер
#Пробрасываем порты в локальную сеть на сервер mail
iptables -t nat -A PREROUTING --dst ${EXT_IP} -p tcp -m multiport --dports ${MAILPORT} -j DNAT --to-destination ${MAILIP}
iptables -t nat -A POSTROUTING --dst ${MAILIP} -p tcp -m multiport --dports ${MAILPORT} -j SNAT --to-source ${INT_IP}
iptables -t nat -A OUTPUT --dst ${EXT_IP} -p tcp -m multiport --dports ${MAILPORT} -j DNAT --to-destination ${MAILIP}
iptables -I FORWARD 1 -i ${EXT_IF} -o ${INT_IF} -d ${MAILIP} -p tcp -m tcp -m multiport --dports ${MAILPORT} -j ACCEPT

Привел кусок iptables который относиться к проблеме.
Собственно в логах Postfix теперь входящая почта с внешки определяется локальным IP шлюза, 192.168.112.21. таким образом срабатывает правило permit_mynetworks и мой почтарь работает как openrelay. За выходные 1000 писем в очереди, жесть просто, почта встала.
с iptables знаком недавно, в данный момент нет времени разбираться почему так происходит. Мне нужно что бы ip источника не заменялся на адрес шлюза. Тогда правило permit_mynetworks не будет отрабатывать и openrelay закроется.
Помогите пожалуйста решить проблему
Спасибо сказали:
Demolitionman
Сообщения: 78

Re: iptables gw + postfix

Сообщение Demolitionman »

Вроде решил проблему удалил строку

Код: Выделить всё

iptables -t nat -A POSTROUTING --dst ${MAILIP} -p tcp -m multiport --dports ${MAILPORT} -j SNAT --to-source ${INT_IP}

Кому интересно, прокоментируйте пожалуйста, в чем я ошибся?
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 21520
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: iptables gw + postfix

Сообщение Bizdelnick »

А что конкретно непонятно? Всё работало ровно так, как описывало это правило. Чего именно Вы хотели им добиться - можно только гадать. Возможно, Вам был нужен SNAT в обратном направлении?
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Demolitionman
Сообщения: 78

Re: iptables gw + postfix

Сообщение Demolitionman »

Bizdelnick писал(а):
13.10.2014 11:48
А что конкретно непонятно? Всё работало ровно так, как описывало это правило. Чего именно Вы хотели им добиться - можно только гадать. Возможно, Вам был нужен SNAT в обратном направлении?

Ну как я понял, SNAT заменяет адрес источника. DNAT по всей видимости не заменяет. Вот хотел узнать правильно я мыслю?
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 21520
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: iptables gw + postfix

Сообщение Bizdelnick »

Demolitionman писал(а):
13.10.2014 12:39
как я понял, SNAT заменяет адрес источника. DNAT по всей видимости не заменяет. Вот хотел узнать правильно я мыслю?

Как Вам сказать... Правильно, но не с той стороны.
SNAT == source NAT
DNAT == destination NAT
Казалось бы, должно быть очевидно, какой адрес кто из них заменяет, нет?
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали: