URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID12
Нить номер: 3634
[ Назад ]

Исходное сообщение
"Squid+IPTables+почта и ничего более"

Отправлено ZanycH , 27-Окт-05 13:08 
Вот такой вопрос господа: имею Suse 9-й, Suid, IPTables + три машины под кспями. Все ходят в нет через Suse. Настроил проксик, всё замечательно (IPTables даже не трогал). Без указания проксика все ходят куда хотят (точнее, куда низзя, туда ясен пень низзя - blacklist). Но при этом не пашет почта на клиентских машинах. Это тоже понятно, т.к. Squid с POP3 и SMTP вроде бы не работает. Пробовал настраивать через маскарадинг через IPTables, тогда почта работает, НО!... Тогда можно ходить в обход сквида! Т.е. не указывать в настройках браузера проксик и всё замечательно работает. Но мне этого не надо! Надо чтобы юзвери ходили ТОЛЬКО через проксик и других вариантов не должно быть. При этом почта чтобы тоже работала есессно. Пробовал поиграться с IPTables. Вроде настроил с помощью указания явных портов. Но тогда странно почта работает. Ощущаются дикие тормоза, иногда вообще сваливается - говорит "невозможно соединиться с сервером" и т.п. Может кто подскажет как настроить IPTables так, чтобы через неё ходила только почта и ничего больше, а все остальное через Squid?

Да, ещё поковырялся, вот что получилось:
-t nat -A PREROUTING -i eth1 -s 192.168.*.*/** -p tcp --dport 80 -j REDIRECT --to-port 3128
-A FORWARD -s 192.168.*.*/** -p tcp --sport 25 -j ACCEPT
-A FORWARD -s 192.168.*.*/** -p tcp --sport 110 -j ACCEPT
-A FORWARD -d 192.168.*.*/** -p tcp --dport 25 -j ACCEPT
-A FORWARD -d 192.168.*.*/** -p tcp --dport 110 -j ACCEPT
-t nat -A POSTROUTING -o eth0 -s 192.168.*.*/** -j MASQUERADE

вот и вопрос правильно ли это?


Содержание

Сообщения в этом обсуждении
"Squid+IPTables+почта и ничего более"
Отправлено Андрей Слободяник , 27-Окт-05 13:58 
>с сервером" и т.п. Может кто подскажет как настроить IPTables так,
>чтобы через неё ходила только почта и ничего больше, а все
google: iptables tutorial в переводе Киселева

>Да, ещё поковырялся, вот что получилось:
>-t nat -A PREROUTING -i eth1 -s 192.168.*.*/** -p tcp --dport 80
>-j REDIRECT --to-port 3128
прозрачно - правильно

>-A FORWARD -s 192.168.*.*/** -p tcp --sport 25 -j ACCEPT
>-A FORWARD -s 192.168.*.*/** -p tcp --sport 110 -j ACCEPT
>-A FORWARD -d 192.168.*.*/** -p tcp --dport 25 -j ACCEPT
>-A FORWARD -d 192.168.*.*/** -p tcp --dport 110 -j ACCEPT

Неправильно, нужно:
-A FORWARD -s 192.168.*.*/** -p tcp --dport 25 -j ACCEPT
-A FORWARD -s 192.168.*.*/** -p tcp --dport 110 -j ACCEPT
-A FORWARD -d 192.168.*.*/** -p tcp --sport 25 -j ACCEPT
-A FORWARD -d 192.168.*.*/** -p tcp --sport 110 -j ACCEPT
Всё остальное DROP?

>-t nat -A POSTROUTING -o eth0 -s 192.168.*.*/** -j MASQUERADE
Лучше:
-t nat -A POSTROUTING -o eth0 -s 192.168.*.*/** -j SNAT --to-source <eth0 ip address>

А ёще лучше почитать туториал и форвард настраивать с учетом established состояния пакетов.

>
>вот и вопрос правильно ли это?



"Squid+IPTables+почта и ничего более"
Отправлено ZanycH , 31-Окт-05 11:50 
пробовал. почему-то не проходит это дело. странно. Так как я писал без заворачивания на squid всё работало. Но в обход проксика, а щас вообще никак не хочет.