Защита от перебора паролей на Mikrotik

Однажды на своём Mikrotik заметил множество записей в логе:

pptp ... TCP connection established from <some IP address>

Вероятность того, что подберут пароль была небольшая, поскольку и логины были сложными, и пароли отвечали требованиям безопасности. Но на всякий случай решено было добавлять адреса, с которых производился перебор в чёрный список.

В первую очередь надо создать список белых адресов и добавить в него свои известные адреса:

/ip firewall address-list
add list=bruteforce_whitelist address=192.168.0.9

Затем создать четыре правила в фаерволе, которые добавляют в списки адреса в зависимости от наличия в предыдущем списке:

/ip firewall filter
add action=add-src-to-address-list address-list=bruteforce_blacklist address-list-timeout=1d chain=input comment="bruteforce blacklist" connection-state=new dst-port=1723 protocol=tcp src-address-list=connection3
add action=add-src-to-address-list address-list=connection3 address-list-timeout=1h chain=input comment="bruteforce third attempt" connection-state=new dst-port=1723 protocol=tcp src-address-list=connection2
add action=add-src-to-address-list address-list=connection2 address-list-timeout=15m chain=input comment="bruteforce second attempt" connection-state=new dst-port=1723 protocol=tcp src-address-list=connection1
add action=add-src-to-address-list address-list=connection1 address-list-timeout=5m chain=input comment="bruteforce first attempt" connection-state=new dst-port=1723 protocol=tcp src-address-list=!bruteforce_whitelist

Сначала адрес при подключении по порту 1723, если он не находится в белом списке bruteforce_whitelist, попадает в первый список на 5 минут, при повторном подключении — на 15, затем на час, и в конце добавляется в чёрный список bruteforce_blacklist на сутки.

В завершении, надо добавить в основное правило PPTP проверку на отсутствие адреса в чёрном списке bruteforce_blacklist.

add action=accept chain=input dst-port=1723 protocol=tcp src-address-list=!bruteforce_blacklist

Если количество адресов для перебора достигает тысяч в сутки, слабые Mikrotik могут зависать от такого количества адресов в списках. Это уже не перебор, а DDoS и надо использовать другую защиту.

Аналогично можно применить защиту на порту 80 и 443.