LINUX.ORG.RU
решено ФорумAdmin

Правила iptables в роутере Zyxel для редиректа портов

 ,


0

2

Имеется сервер с настроенным SQUID`ом, который подключен через роутер Zyxel GIGA 2 прошитый 1 версией прошивки, раздающий интернет на все подключенные к нему компьютеры находящихся в сети 192.168.1.0/24. (Сервер 192.168.1.2)
Подскажите какие правила необходимо указать в iptables роутера, чтобы он делал редирект запросов поступающих на 80 порт роутера, на порт сервера 3128.
Встретил подобную тему http://forum.zyxmon.org/topic183-prozrachno-filtratsiya-reklamy-keshiruyushch... с указанием правил, которые я пытался хоть как то изменить, но ничего из этого не вышло. Надеюсь на вашу помощь.

/var/tmp # iptables -L -n -v
Chain INPUT (policy DROP 95 packets, 12068 bytes)
 pkts bytes target     prot opt in     out     source               destination         
  701  103K ACCEPT     all  --  br0    *       0.0.0.0/0            0.0.0.0/0           
    1    76 ACCEPT     all  --  ppp0   *       0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED 
    0     0 ACCEPT     2    --  ppp0   *       0.0.0.0/0            0.0.0.0/0           
    0     0 DROP       icmp --  ppp0   *       0.0.0.0/0            0.0.0.0/0           icmp type 8 
    0     0 ACCEPT     icmp --  *      *       0.0.0.0/0            0.0.0.0/0           icmp type 255 

Chain FORWARD (policy DROP 231 packets, 15245 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 DROP       all  --  !br0   ppp0    0.0.0.0/0            0.0.0.0/0           
 1986  220K ACCEPT     all  --  ppp0   *       0.0.0.0/0            192.168.1.2         state NEW 
    0     0 ACCEPT     udp  --  ppp0   *       0.0.0.0/0            192.168.1.2         state NEW udp dpt:22 
    0     0 ACCEPT     tcp  --  ppp0   *       0.0.0.0/0            192.168.1.2         state NEW tcp dpt:22 
    0     0 ACCEPT     tcp  --  ppp0   *       0.0.0.0/0            192.168.1.2         state NEW tcp dpts:20:21 
    0     0 ACCEPT     udp  --  ppp0   *       0.0.0.0/0            192.168.1.2         state NEW udp dpt:443 
    0     0 ACCEPT     tcp  --  ppp0   *       0.0.0.0/0            192.168.1.2         state NEW tcp dpt:443 
    0     0 ACCEPT     tcp  --  ppp0   *       0.0.0.0/0            192.168.1.2         state NEW tcp dpt:80 
  949 69364 ACCEPT     all  --  br0    *       0.0.0.0/0            0.0.0.0/0           state NEW 
  148 29446 ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED 
    0     0 MINIUPNPD  all  --  ppp0   !ppp0   0.0.0.0/0            0.0.0.0/0           

Chain OUTPUT (policy ACCEPT 871 packets, 298K bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain MINIUPNPD (1 references)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            192.168.1.3         tcp dpt:18476 
    0     0 ACCEPT     udp  --  *      *       0.0.0.0/0            192.168.1.3         udp dpt:18476

Цепочка текущих правил

Ответ на: комментарий от pavel38
/var/tmp # iptables -t nat -L -n -v
Chain PREROUTING (policy ACCEPT 46375 packets, 3258K bytes)
 pkts bytes target     prot opt in     out     source               destination         
  405 23508 DNAT       tcp  --  *      *       0.0.0.0/0            91.206.19.162       tcp dpt:80 to:192.168.1.2 
   33  1936 DNAT       tcp  --  *      *       0.0.0.0/0            91.206.19.162       tcp dpt:443 to:192.168.1.2 
    0     0 DNAT       udp  --  *      *       0.0.0.0/0            91.206.19.162       udp dpt:443 to:192.168.1.2 
    1    40 DNAT       tcp  --  *      *       0.0.0.0/0            91.206.19.162       tcp dpts:20:21 to:192.168.1.2 
 1252 74844 DNAT       tcp  --  *      *       0.0.0.0/0            91.206.19.162       tcp dpt:22 to:192.168.1.2 
    0     0 DNAT       udp  --  *      *       0.0.0.0/0            91.206.19.162       udp dpt:22 to:192.168.1.2 
40935 4994K DNAT       all  --  ppp0   *       0.0.0.0/0            91.206.19.162       to:192.168.1.2 
 2391  182K MINIUPNPD  all  --  ppp0   *       0.0.0.0/0            0.0.0.0/0           

Chain POSTROUTING (policy ACCEPT 43036 packets, 5213K bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 MASQUERADE  udp  --  *      *       192.168.1.0/24       192.168.1.2         udp dpt:22 
    0     0 MASQUERADE  tcp  --  *      *       192.168.1.0/24       192.168.1.2         tcp dpt:22 
    0     0 MASQUERADE  tcp  --  *      *       192.168.1.0/24       192.168.1.2         tcp dpts:20:21 
    0     0 MASQUERADE  udp  --  *      *       192.168.1.0/24       192.168.1.2         udp dpt:443 
   28  1680 MASQUERADE  tcp  --  *      *       192.168.1.0/24       192.168.1.2         tcp dpt:443 
   72  4320 MASQUERADE  tcp  --  *      *       192.168.1.0/24       192.168.1.2         tcp dpt:80 
18821 1402K MASQUERADE  all  --  *      ppp0    0.0.0.0/0            0.0.0.0/0           
    0     0 SNAT       all  --  *      eth0    192.168.1.0/24       192.168.1.2         to:192.168.1.1
Kamikadze ()
Ответ на: комментарий от Kamikadze

[Telepat mode]Если я правильно понимаю, то юзер который ломится изнутри на 80 порт во вне то он должен перебрасываться на 192.168.1.2:3128 [/Telepat mode] проверить не на чем пока что , но можно попробовать

Chain PREROUTING (policy ACCEPT 46375 packets, 3258K bytes)
 pkts bytes target     prot opt in     out     source               destination         
  405 23508 DNAT       tcp  --  eth0      *       192.168.1.0/24            0.0.0.0/0       tcp dpt:3128 to:192.168.1.2
Вроде так, но не проверял

pavel38 ()
Последнее исправление: pavel38 (всего исправлений: 1)
Ответ на: комментарий от pavel38

Проблема понятна правильно, только как это указать правилом для iptables с указанием конкретного порта на который пользователь ломится? Какой строчкой дать эту команду?
p/s - На форуме dd-wrt скорее всего нашел решение http://www.dd-wrt.com/phpBB2/viewtopic.php?t=62222, но которое в данный момент не имею возможности проверить.

Kamikadze ()
Ответ на: комментарий от Kamikadze

По той ссылке найдено то что должно подойти, ну и подправлено для твоего случая

sudo iptables -t nat -I PREROUTING -i eth0 ! -s 192.168.1.2 -p tcp --dport 80 -j DNAT --to 192.168.1.2:3128 
Пробуй

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