Тема: Syn Attack
Показать сообщение отдельно

  #9  
Старый 01.03.2010, 02:01
ntldr
Постоянный
Регистрация: 04.12.2007
Сообщений: 424
Провел на форуме:
2364957

Репутация: 479
По умолчанию

PHP код:
iptables -F
iptables 
-X syn-flood
iptables 
-A FORWARD -j DROP
iptables 
-A INPUT -i lo -j ACCEPT
iptables 
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

iptables 
-N syn-flood
iptables 
-A INPUT -p tcp --syn --dport 80 -m state --state NEW -j syn-flood
iptables 
-A syn-flood -p tcp -m limit --limit 3/second --limit-burst 10 -RETURN
iptables -A syn-flood -j DROP


iptables 
-A INPUT -p tcp --dport 80 ! --syn -m state --state NEW -j DROP
iptables 
-A INPUT -p tcp --dport 80 -m connlimit --connlimit-above 10 -j DROP

iptables 
-A INPUT -p tcp --dport 80 -j ACCEPT

iptables 
-A INPUT --source айпи.админа.оло.ло -j ACCEPT

iptables 
-A INPUT -j DROP 
p.s. вот эти правила правильнее. То есть, если идет более 10 SYN/секунду, то ограничиваемся 3 syn+ack от сервера, таким образом можно установить не более 10 соединений.
Тестил, пашет. Жаль, в iptables не предусмотрено автобанилки
 
Ответить с цитированием