Шпаргалка - простейшая настройка iptables

Правила по умолчанию

 iptables -F
 iptables -P INPUT ACCEPT
 iptables -P FORWARD ACCEPT
 iptables -P OUTPUT ACCEPT
 iptables -A INPUT -i lo -j ACCEPT
 iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
 iptables -A INPUT -s x.x.x.x -p tcp -m state --state NEW -m tcp -m multiport --dports 22 -m comment --comment "Accessing ssh" -j ACCEPT
 iptables -A INPUT -p icmp -m comment --comment "ACCEPTING PING PACKETS" -m icmp --icmp-type 8/0 -j ACCEPT
 iptables -A INPUT -p icmp -m comment --comment "ACCEPTING TRACERT PACKETS" -m icmp --icmp-type 11 -j ACCEPT
 iptables -A INPUT -m comment --comment "REJECT ALL OTHER" -j REJECT

Сохраняем правила

/etc/init.d/iptables save

Протоколирование правил

Перед правилом блокировки вставить "log" правило:

 iptables -A INPUT -j LOG --log-level debug --log-prefix "blocked: "

Настроить /etc/syslog.conf на прием kern.debug логов:

 kern.=debug -/var/log/kernel

Логи можно смотреть в dmesg

Порядок прохождения пакетов

Лимиты на кол-во пакетов

Ограничение в 50 SYN-пакетов в секунду

 iptables -A INPUT -p tcp --syn -m limit --limit 1/s --limit-burst 50 -j ACCEPT

Лимит на кол-во параллельных tcp-соединений

Ограничение в 5 параллельных tcp-соединений до веб-сервиса

 iptables -I INPUT -p tcp --syn --dport 80 -m connlimit --connlimit-above 10 -j REJECT

Настройки ip6tables

Создадим правила

ip6tables -F
ip6tables -A INPUT -m icmpv6 -p icmpv6 --icmpv6-type echo-request -j ACCEPT
ip6tables -A INPUT -j REJECT
ip6tables -A FORWARD -j REJECT

Сохраним правила и поместим в автозапуск

ip6tables-save > /etc/sysconfig/ip6tables
chkconfig --level 3 ip6tables on
service ip6tables start

Ссылки

Комментарии

 
blog/2014/03/13-шпаргалка_-_простейшая_настройка_iptables.txt · Последние изменения: 2014/03/13 17:02 — Антон Бугреев · []