From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Message-ID: <4538C414.8040206@cint.ru> Date: Fri, 20 Oct 2006 16:41:56 +0400 From: Artur Yakupov User-Agent: Thunderbird 1.5.0.5 (X11/20060719) MIME-Version: 1.0 To: ALT Linux Community References: In-Reply-To: Content-Type: text/plain; charset=KOI8-R; format=flowed Content-Transfer-Encoding: 8bit X-Virus-Scanned: by amavisd-new at localhost Subject: Re: [Comm] iptables_settings X-BeenThere: community@lists.altlinux.org X-Mailman-Version: 2.1.9rc1 Precedence: list Reply-To: ALT Linux Community List-Id: ALT Linux Community List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Oct 2006 12:42:13 -0000 Archived-At: List-Archive: List-Post: Глазунов Алексей Александрович пишет: > Есть необходимость научить программу "Дипост" ходить в инет в обход 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