17.1.3. Конфигурирование IpChains

17.1.3. Конфигурирование IpChains

Теперь приступим к настройке IPChains. Создайте цепочку, через которую пойдет весь трафик от провайдера:

ipchains –N prov

ipchains –A input –i eth0 –j prov

Запретите ip-spoofing:

ipchains –A prov –s 192.168.1.1/16 –1 –j DENY

ipchains –A prov –s 127.0.0.1/8 –1 –j

DENY Запретите Telnet снаружи:

ipchains –A prov –p tcp –destination-port 23 –j REJECT

Если вы не хотите, чтобы samba «светилась» наружу, запретите порты 137-139:

ipchains –A prov –p tcp –destination-port 137 –j REJECT

ipchains –A prov –p udp –destination-port 137 –j REJECT

To же самое проделайте для портов 138 и 129.

О настройке samba вы можете прочитать в Samba-HOWTO.

Создайте цепочку для подсчета трафика:

ipchains –N trafin

ipchains –I input –i eth0 –s ! 123.123.123.0/24 –p all –j trafin

ipchains –A trafin –d 123.123.123.123

Для того, чтобы ваши правила были постоянными (при перезагрузке машины правила IpChains теряются), используйте скрипты ipchains-save и ipchains-restore. Настройте свои правила, а затем выполните команду:

# ipchains-save > /etc/ipchains.rules

Далее создайте скрипт, подобный тому, что приведен в листинге 17.1.

Листинг 17.1. Скрипт управления пакетной фильтрацией

#!/bin/sh

# Скрипт управления пакетной фильтрацией.

# Если правил нет, то ничего не делать.

[-f /etc/ipchains. rules] || exit 0

case "$1" in

start)

 echo –n "Включение пакетной фильтрации:"

 /sbin/ipchains-restore </etc/ipchains.rules || exit 1

 echo 1 > /proc/sys/net/ipv4/ip_forward

 echo "." ;;

stop)

 echo –n "Отключение пакетной фильтрации:"

 echo 0 >/proc/sys/net/ipv4/ip_forward

 /sbin/ipchains –X

 /sbin/ipchains –F

 /sbin/ipchains –P input ACCEPT

 /sbin/ipchains –P output ACCEPT

 /sbin/ipchains –P forward ACCEPT

 echo "." ;;

*)

 echo "Использование: /etc/init.d/packetfilter {start|stop}"

 exit 1 ;;

esac

exit 0

Этот скрипт добавьте в сценарии загрузки системы.

Данный текст является ознакомительным фрагментом.