Bug 11669 - добавить правила для лимитирования количества попыток по ssh в sysconfig/iptables
: добавить правила для лимитирования количества попыток по ssh в sysconfig/ipta...
Status: NEW
: Sisyphus
(All bugs in Sisyphus/iptables)
: unstable
: all Linux
: P2 enhancement
Assigned To:
:
:
:
:
:
  Show dependency tree
 
Reported: 2007-05-01 16:52 by
Modified: 2012-09-11 12:21 (History)


Attachments


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2007-05-01 16:52:37
Не плохо было бы иметь вот такие правила в sysconfig/iptables:

-A INPUT -p TCP --syn --dport 22 -m recent --name ssh_rate_limit --set
-A INPUT -p TCP --syn --dport 22 -m recent --name ssh_rate_limit --update
--seconds 60 --hitcount 4 -j LOG
-A INPUT -p TCP --syn --dport 22 -m recent --name ssh_rate_limit --update
--seconds 60 --hitcount 4 -j DROP

чтобы только раскомментировать осталось... А то и сразу. В случае, если ssh
снаружи открыт (а оно бывает, всё-таки), позволяет трафик сэкономить. А если
логин не по ключу, то и вероятность подбора уменьшает.
------- Comment #1 From 2007-05-02 05:02:49 -------
Разве что в %doc, поскольку первый же service iptables save
всю эту ручную работу сотрёт.
------- Comment #2 From 2007-05-02 09:20:04 -------
да, что-то я про save не подумал. В угоду читабельности я его не использую 
практически... Тогда, действительно, в %doc. Хотя и в iptables можно тоже - 
сотрёт, так сотрёт...
------- Comment #3 From 2007-05-02 09:27:53 -------
hiddenman, предлагаю добавить это в fw etcnet по умолчанию.
------- Comment #4 From 2007-05-02 17:13:33 -------
Ну я давно подумываю над некими стандартными примерами/профилями или чем-то
подобным. То же самое и для QoS не мешало бы иметь. Осталось только придумать,
как это все реализовать, ну и сами примеры написать.
------- Comment #5 From 2012-09-11 12:21:41 -------
В связи с насевшим на меня "DNS amplification attack" пришлось добавить и
такое:

# before RELATED,ESTABLISHED
$IPTABLES -I INPUT 1 -i wan0 -p udp --dport 53 -m recent --set --name DNSQF
--rsource
$IPTABLES -I INPUT 2 -i wan0 -p udp --dport 53 -m recent --update --seconds 1
--hitcount 9 --name DNSQF --rsource -j DROP
$IPTABLES -I INPUT 3 -i wan0 -p udp --dport 53 -m recent --set --name DNSHF
--rsource
$IPTABLES -I INPUT 4 -i wan0 -p udp --dport 53 -m recent --update --seconds 7
--hitcount 20 --name DNSHF --rsource -j DROP
# after RELATED,ESTABLISHED
$IPTABLES -I INPUT 6 -i wan0 -p tcp --dport 22 -m state --state NEW -m recent
--set --name SSHQF --rsource
$IPTABLES -I INPUT 7 -i wan0 -p tcp --dport 22 -m state --state NEW -m recent
--update --seconds 1 --hitcount 1 --name SSHQF --rsource -j DROP
$IPTABLES -I INPUT 8 -i wan0 -p tcp --dport 22 -m state --state NEW -m recent
--set --name SSHHF --rsource
$IPTABLES -I INPUT 9 -i wan0 -p tcp --dport 22 -m state --state NEW -m recent
--update --seconds 60 --hitcount 3 --name SSHHF --rsource -j DROP

В частном порядке готов ответить, если что не понятно.

P.S. в вики прошу не посылать - я сейчас сам пойду, гляну, есть ли это там...