[Comm] iptables_settings

Artur Yakupov =?iso-8859-1?q?artur_=CE=C1_cint=2Eru?=
Пт Окт 20 16:41:56 MSD 2006


Глазунов Алексей Александрович пишет:
> Есть необходимость научить программу "Дипост" ходить в инет в обход proxy.
> Функцию прокси, помимо прочих, выполняет ALTLinux Master 2.2.
> На ALTLinux-сервере стоит 2 сетевые карты:
> eth0 - смотрит в инет с IP 213.129.97.250
> eth1 - смотрит в локалку с IP 192.168.0.0/255.255.255.0
> Все ходят в инет только через squid.
>
> Дипост рапотает с портами 25 и 110  и никаких настроек под прокси не имеет.
> Есть возможность другие порты указать. Решили, чтобы не сломать почту, что  
> нужно
> на сервере с локального компа 192.168.0.205 принимать запросы на порты  
> 3025 и 3110
> и передавать их далее на 195.98.64.73 в порты 25 и 110. Ответы с  
> 195.98.64.73
> соответвенно требуется переадресовать на 192.168.0.205.
> Сделал следующие настройки в iptables:
>
> # Example iptables config file.
> # Note the this file uses the format of iptables-save
> # What follows is an example of this output.  However,
> # the actual rule lines have been commented out.
> # DO NOT USE THE -t (table) OPTION IN THIS FILE!
> *mangle
> :PREROUTING ACCEPT [0:0]
> :OUTPUT ACCEPT [0:0]
> #-A PREROUTING -p tcp --dport 22 -j TOS --set-tos 0x10
> COMMIT
> *filter
> :INPUT ACCEPT [0:0]
> :FORWARD ACCEPT [0:0]
> :OUTPUT ACCEPT [0:0]
> #-A FORWARD -i eth0 -j ACCEPT
> COMMIT
> *nat
> :PREROUTING ACCEPT [0:0]
> #195.98.64.73 - ip-server_bank
> #-A PREROUTING -p tcp --dport 25 -j REDIRECT --to-ports 3128
> #-A PREROUTING -p tcp -d 192.168.0.205 --dport 3025 -j DNAT  
> --to-destination 195.98.64.73:25
> #-A PREROUTING -p tcp -d 192.168.0.205 --dport 3110 -j DNAT  
> --to-destination 195.98.64.73:110
>
>
>
> :POSTROUTING ACCEPT [0:0]
> #-A POSTROUTING -p tcp --dport 110 -o eth0 -j SNAT --to-source  
> 213.129.97.252
> #-A POSTROUTING -p tcp -s 192.168.0.205 -d 192.168.0.201 -o eth0 -j SNAT  
> --to-source 213.129.97.252:25
>
>
> :OUTPUT ACCEPT [0:0]
> #-A POSTROUTING -o eth0 -j MASQUERADE
> COMMIT
>
>
>
> "Дипост" так и не заработал :-(
> Как проверить правильно ли настроил iptables? Может еще чего-то нужно  
> подкрутить?
>
>   
Подправим так:

-A PREROUTING -p tcp -s 195.98.64.73 -d 213.129.97.252 --dport 25 -j DNAT  
--to-destination 192.168.0.205:3025
-A PREROUTING -p tcp -s 195.98.64.73 -d 213.129.97.252 --dport 110 -j DNAT  
--to-destination 192.168.0.205:3110
-A POSTROUTING -p tcp --dport 25 -s 192.168.0.205 -o eth0 -j SNAT --to-source  
213.129.97.252
-A POSTROUTING -p tcp --dport 110 -s 192.168.0.205 -o eth0 -j SNAT --to-source  
213.129.97.252

в /etc/sysctl.conf добавить
net.ipv4.ip_forward = 1

и чтобы не перегружаться
echo 1 > /proc/sys/net/ipv4/ip_forward

в настройках дипоста оставить адрес дипостного сервера 195.98.64.73

Так все вроде должно работать при условии сохранения policy ACCEPT в цепочке FORWARD.
 

-- 
------------
С уважением,
Артур Якупов

ЗАО Корпорация Интерсвязь

mailto:artur на cint.ru




Подробная информация о списке рассылки community