@NikZX
Начинающий сисадмин

Как настроить «Fail2ban» на Mikrotik?

Пытаюсь настроить условный fail2ban на Mikrotik CCR-1016, исходя из официальной документации
https://wiki.mikrotik.com/wiki/Bruteforce_login_pr... :

1) add chain=input protocol=tcp dst-port=22 connection-state=new action=add-src-to-address-list \
address-list=ssh_stage1 address-list-timeout=1m comment="" disabled=no

(помечаем любые попытки залогиниться в список ssh_stage1 на 1 минуту)

2) add chain=input protocol=tcp dst-port=22 connection-state=new src-address-list=ssh_stage1 \
action=add-src-to-address-list address-list=ssh_stage2 address-list-timeout=1m comment="" disabled=no

(вторую попытку подключения c ip заносим со списка ssh_stage1 в список ssh_stage2 также на 1 минуту)


3) add chain=input protocol=tcp dst-port=22 connection-state=new \
src-address-list=ssh_stage2 action=add-src-to-address-list address-list=ssh_stage3 \
address-list-timeout=1m comment="" disabled=no

(третью попытку подключения также заносим из ssh_stage2 в ssh_stage3 и также на 1 минуту)


4) add chain=input protocol=tcp dst-port=22 connection-state=new \
src-address-list=ssh_stage3 action=add-src-to-address-list address-list=ssh_blacklist \
address-list-timeout=10d comment="" disabled=no

(четвертая и последующие попытки должны отправляться в банлист на 10 дней)


5) add chain=input protocol=tcp dst-port=22 src-address-list=ssh_blacklist action=drop \
comment="drop ssh brute forcers" disabled=no

(собственно, бан всех, кто в ssh_blacklist)


Проблема заключается в том, что даже при санкционированном подключении по ssh у меня вырисовывается картина - честный ip попадает во все списки, в т.ч. и в бан-лист (да, у меня не стандартный порт 22) :

60e3fce1532eb883859185.png

Добавил даже пятое правило-костыль, аналог задержки, но толку ноль.

Думается, что тут надо как-то отслеживать факт цивильного подключения и пропускать дальнейшую обработку пакетов по адресным листам, но что прикажете делать, если даже копипаста с официальной документации не работает. Пробовал обновлять прошивку, не помогает.
  • Вопрос задан
  • 3590 просмотров
Решения вопроса 1
Mi11er
@Mi11er
A human...
Ну так сделайте еще один список. white list и просто добавьте в правила, если src adress не в белом листе, то идем по правилам.
Либо первое правило проверка на SSH и white list, дальше jump на остальные правила
add action=add-src-to-address-list address-list=blocked_honeypot address-list-timeout=1w1s chain=input connection-state=new in-interface=ether1 protocol=tcp src-address-list=!admin src-port=3389,22,8291
add action=drop chain=input src-address-list=blocked_honeypot
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
karabanov
@karabanov
Системный администратор
Комментировать
@hokum13
Некропост, понимаю, но!
Важен порядок добавления правил в фаерволл. Правила должны добавляться в обратном порядке, тогда всё работает.
Ну или после добавления должен быть поменян порядок правил на обратный.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы