LINUX.ORG.RU
ФорумAdmin

как пропустить почту в прозрачном прокси


0

0

eth0 -внутр. сеть eth1- внешняя

поставил след. цепочки

-A INPUT -i eth0 -p tcp --dport 110 -j ACCEPT

-A INPUT -i eth0 -p tcp --dport 25 -j ACCEPT

-A INPUT -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN,ACK SYN -j LOG --log-level 7 --log-tcp-options

-A INPUT -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN,ACK SYN -j REJECT --reject-with icmp-port-unreachable

-A FORWARD -o eth1 -p tcp -j DROP

IPTABLES -t nat -A POSTROUTING -s 192.168.0.0/24

-o eth1 -p tcp --dport 25 -j SNAT --to ip eth1

IPTABLES -t nat -A POSTROUTING -s 192.168.1.0/24 - p tcp --dort 25

-j MASQUERADE

такие же пепочки для 110 порта

прокси работает, а почта не проходит. что не так


Ответ на: комментарий от Jaizer

эти записи нашел в инете

это блокирование выхода через eth1 возможно там описывался

только вход -порт 25 а не 110

надо удалить ее или подкорректировать

ну в принципе что не так почему почта не проходит хотя бы по входу

valery
() автор топика

INPUT

Бегом читать man iptables. Цепочка INPUT отвечает за пакеты, предназначенные самому серваку. Транзитные фильтруются в FORWARD.

iptables -F
iptables -t nat -F
iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -p tcp -m multiport --dport 25,110,143 -j ACCEPT
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
nnz ★★★★
()

-A FORWARD -o eth1 -p tcp -j DROP

это убрать.

IPTABLES -t nat -A POSTROUTING -s 192.168.1.0/24 - p tcp --dort 25

это заменить на --dport 110

IPTABLES -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth1 -p tcp --dport 25 -j SNAT --to ip eth1

IPTABLES -t nat -A POSTROUTING -s 192.168.1.0/24 - p tcp --dort 25 -j MASQUERADE

Это убрать, заменить на iptables -t nat -I POSTROUTING -s 192.168.0.0/16 -j SNAT --to-source 11.22.33.44

согласно докам на iptables, любая фильтрация в таблицах отличных от filter (т.е. nat, mangle, raw) - нежелательна. Т.е. проброс портов делать для всех возможных подсетей, а в iptables -A FORWARD уже разрешать или запрещать. (например, iptables -I FORWARD -p tcp --dport 110 -s 192.168.1.0/24 -j ACCEPT

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

> по твоей рекомендации - возможна лишняя нагрузка на модуль nat.

рекомендации пишут парни, которые кодят netfilter. наверное, им виднее, в каком случае будет лишняя нагрузка. Возможно, на нат нагрузка будет больше, но совокупня нагрузка - меньше. А вы как считаете? :)

azure ★★
()

А можно узнать каким боком к этим iptables-правилам прозрачный proxy ?
Прозрачного проксирования почты я тут как-то не наблюдаю.

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

это просто NAT.
прозрачное проксирование это когда у тебя squid в режиме transparent proxy для веб и ченить вроде perdition для входящей почты. зы. для исходящей почты юзаю экзим
проксирование от NAT отличается тем, что у тебя вирусня через тот же 110й порт не простучится, поскольку проксирующая программа будет кромсать соединение согласно протокола, а не просто переправлять пакеты.

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

блин, слова «нат» перед проксированием не заметил, сории

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