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

Скрипт для iptables после апдейта squeeze->wheezy


0

1

Скрипт с содержимым

#!/bin/sh
iptables -F INPUT
iptables -F FORWARD
iptables -F OUTPUT
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
echo "1" > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A PREROUTING  --in-interface eth0 --destination ! 192.168.0.0/24 -p tcp -m multiport --dport 80 -j DNAT --to 192.168.0.1:3128

после апдейта squeeze->wheezy начал выдавать

Bad argument `192.168.0.0/24'

чтение мануалорв результатов не принесло :( подскажите плиз шо там такого поменяли, что теперь оно не работает ...

 ifconfig
eth0      Link encap:Ethernet  HWaddr 00:1b:11:79:3c:e5
          inet addr:192.168.0.1  Bcast:192.168.0.255  Mask:255.255.255.0
          inet6 addr: fe80::21b:11ff:fe79:3ce5/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1443 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2613 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:280594 (274.0 KiB)  TX bytes:570339 (556.9 KiB)
          Interrupt:16

eth1      Link encap:Ethernet  HWaddr 00:40:f4:ea:5a:11
          inet addr:192.168.1.1  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::240:f4ff:feea:5a11/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:19971159 errors:0 dropped:0 overruns:0 frame:0
          TX packets:16426216 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:372525562 (355.2 MiB)  TX bytes:2972513385 (2.7 GiB)
          Interrupt:20 Base address:0xd000

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:7324 errors:0 dropped:0 overruns:0 frame:0
          TX packets:7324 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:1800281 (1.7 MiB)  TX bytes:1800281 (1.7 MiB)

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

феерично! :) таки заработало... а в чем все ж суть? что-то поменялось в консерватории?

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

> Он же скрипт не изменял. Всё работало до апдейта.

Насколько я помню - мне iptables рассказывал, что запись типа --destination ! 192.168.0.0/24 будет скоро deprecated. Вот видимо и депрекейтнулось :)

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

Для iptables интерфейсы должны быть безразличны. Может у ТС вобще shell ругается, т.к. восклицательный знак без кавычек.

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

Да, наверное, bad syntax.

Занятно, CentOS'ы перешагнули через тот man, где говорилось, что запись "--destination [!] address[/mask]" DEPRECATED. В шестой версии man сразу даёт только «[!] --destination address[/mask]». То ли в дебиане man не обновили, то ли ТС его не прочитал.

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

Простите за безграмотность, но можно про

Для iptables интерфейсы должны быть безразличны.

чуток поподробнее. Всем ведь известно про -i.

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

Моя фраза была в ответ на:

eth0 и eth1 поменялись после апдейта местами.

В смысле, что iptables вобще без разницы какие в системе есть интерфейсы. И есть ли они вобще. Можно задавать любое имя интерфейса через "-i" и правило просто не будет срабатывать, если там задать не существующий в системе интерфейс. Поэтому, если вызываемые из скрипта команды iptables перестали работать, это точно не из-за смены имён интерфейсов.

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