Категорії
FreeBSD OpenBSD Security

Блокируем подбор паролей в pf стандартными средствами

PF – очень мощный инструмент и в его арсенале имеются штатные средства для блокировки паролей. И так нужна такая конструкция:

table <badhosts> persist
...
block drop in quick on $ext_if from to any label "ssh bruteforce"
block drop out quick on $ext_if from any to label "ssh bruteforce"
...
pass in quick on $ext_if proto tcp from any to ($ext_if) port 22 flags S/SA keep state (max-src-conn-rate 1/60, overloadflush global)

Данное правило означает, что мы будем пропускать только тех, кто за 60 секунд сделал не больше 1 неудачной попытки. Важно понимать, что количество попыток – это на самом деле не именно количество попыток, а количество подключений. То есть к примеру, при одном одном подключении при стандартной конфигурации демона sshd вы имеет возможность 3 раза ввести пароль. Дальше ваш разъеденяет и вы можете опять заново подключиться и вводить опять 3 раза пароль. Так вот, здесь как раз считается не количество попыток подборов (их будет 3 раза больше) а количество подключений.
При этом все нарушители заносятся в таблицу badhosts и их текущие сессии сразу же обрываются. Очищать таблицу можно по крону: для этого добавим такую строку:

0 0 * * * /sbin/pfctl -t badhosts -T flush

Так мы очищаем ровно в полночь всю таблицу.

Посмотреть негодяев можно так:

# pfctl -t badhosts -T show
24.156.222.5

Примечание.

Начиная с версии FreeBSD 11.0 можно использовать blacklistd, который перекочевал из NetBSD

2 коментарі “Блокируем подбор паролей в pf стандартными средствами”

чтоб не забанить до полуночи себя, следует запускать почаще и использовать expire вместо flush

*/5 * * * * /sbin/pfctl -t badhosts -T expire 3600 > /dev/null 2>&1

Что бы не забанить себя, нужно себя добавить whitelist, а так же иметь под рукой 1-2 рабочих места с разными IP, если так случилось, что по ошибке забанили себя. ИМХО.

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *

Домашняя страничка Andy
Записки молодого админа
Самостоятельная подготовка к Cisco CCNA
Самостоятельная подготовка к Cisco CCNP
Powered by Muff