Проблема с iptables
Вечер добрый. Не получается настроить iptables
есть два ифейса, eth0 - внутренняя сетка, eth1 - внешняя:
hsr ~ # ifconfig
eth0 Link encap:Ethernet HWaddr 00:19:D1:2A:40:9A
inet addr:192.168.10.1 Bcast:192.168.10.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:103469 errors:0 dropped:0 overruns:0 frame:0
TX packets:319425 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:8845774 (8.4 Mb) TX bytes:467050111 (445.4 Mb)
Base address:0x2000 Memory:92300000-92320000
eth1 Link encap:Ethernet HWaddr 00:D0:43:7A:C6:70
inet addr:192.168.1.3 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST NOTRAILERS RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1896 errors:0 dropped:0 overruns:0 frame:0
TX packets:1701 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1282246 (1.2 Mb) TX bytes:294347 (287.4 Kb)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:13841 errors:0 dropped:0 overruns:0 frame:0
TX packets:13841 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:600832 (586.7 Kb) TX bytes:600832 (586.7 Kb)
Есть такой вот скрипт (делал по ману wiki):
hsr ~ # cat ./firewall.sh
#!/bin/bash
IPTABLES='/sbin/iptables'
# Set interface values
EXTIF1='eth1'
INTIF='eth0'
# flush rules and delete chains
$IPTABLES -F
$IPTABLES -X
# enable masquerading to allow LAN internet access
$IPTABLES -t nat -A POSTROUTING -o $EXTIF1 -j MASQUERADE
# forward LAN traffic from $INTIF1 to Internet interface $EXTIF
$IPTABLES -A FORWARD -i $INTIF -o $EXTIF1 -m state --state NEW,ESTABLISHED -j ACCEPT
# block out all other Internet access on $EXTIF
$IPTABLES -A INPUT -i $EXTIF1 -m state --state NEW,INVALID -j DROP
$IPTABLES -A FORWARD -i $EXTIF1 -m state --state NEW,INVALID -j DROP
Перенаправление пакетов из внутренней сетку во внешнюю есть, это работает, но почему то не закрыты порты на внешней сетке
hsr ~ # nmap 192.168.1.3
Starting Nmap 4.01 ( http://www.insecure.org/nmap/ ) at 2007-03-08 09:39 MSK
Interesting ports on 192.168.1.3:
(The 1669 ports scanned but not shown below are in state: closed)
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
8000/tcp open http-alt
хотя вроде должно все блокироваться, как можно пофиксить? или я что то неправильно настраиваю?
- Для комментирования войдите или зарегистрируйтесь
может и
может и неправильно...
1. порты 22,80(возможно 8000 тоже) открыватюся демонами, апачем и ссш-ем, это закономерно, чтобы извне можно было по ним зацепиться
2. обычно в начале и в конце (в зависимости от направления просмотра правил, я точно не помню) ставятся правила типа
${IPTABLES} -A INPUT -j DROP
${IPTABLES} -A OUTPUT -j DROP
${IPTABLES} -A FORWARD -j DROP
это запретит все пакеты, к-е не попадают под правила описаные выше, т.е. "не разрешены явно"
таким образом чтобы апач, ссш, днс, и че-тебе-еще-надо прописываются правилами "что им можно"
а как можно
а как можно указать чтобы только на определенный интерфейс эти правила действовали?
кажется нет... я
кажется нет... я не помню, давно дело было...
вообче самый правильный совет man iptables, но я понимаю что лениво..
вот тут пример скрипта
http://www.opennet.ru/docs/RUS/iptables/misc/iptables-tutorial/scripts/rc.firewall.txt
изучи, он с коментами...
взято тут: http://www.opennet.ru/docs/RUS/iptables/