Вы здесь

Защита от брутфорса на MikroTik


Защита от брутфорса на MikroTik

Если у вас есть маршрутизатор микротик, и на нем есть белый IP адрес и открыт стандартный порт ssh, то наверняка вы обращали внимание, что весь лог забит неудачными попытками входа в систему. В большинстве случаев, это связано с тем, что ssh нещадно брутфорсят, все кому ни лень. Сегодня покажу вам, как можно защититься от подобного на микротике. Мы сделаем, что то вроде fail2ban.

Команды будем вводить через терминал.

Заходим в винбокс, запускаем терминал и вводим:

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

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=1d comment="" disabled=no

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

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

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

После ввода этих команд, нужно перейти в IP - Firewall и переместить добавленные правила вверх списка правил.

Логика тут проста до безобразия — есть несколько шагов, для добавления IP адреса атакующего в бан. Каждый шаг — по сути, попытка подключения. Дается 4 попытки подключения, с максимальным интервалом по минуте, между попытками, если они привышены, адрес попадает в блэк лист. На 1 день.

За время бана отвечает параметр — address-list-timeout=1d во второй команде.

По такому же принципу можно банить, например подключения к RDP, если он проброшен, в этом случае нужно будет изменить порт с 22ого на 3389, и изменить chain на forward.
Т.е. будет что то вроде:

add chain=forward protocol=tcp dst-port=3389 connection-state=new action=add-src-to-address-list \
address-list=rdp_stage1 address-list-timeout=1m comment="" disabled=no

Есть еще один интересный способ блокирования брутфорсеров, если трафик летит не шифрованный, например ftp. Можно блокировать негодяев, анализируя содержимое пакетов:

add chain=input protocol=tcp dst-port=21 src-address-list=ftp_blacklist action=drop \
comment="drop ftp brute forcers"

add chain=output action=accept protocol=tcp content="530 Login incorrect" dst-limit=1/1m,9,dst-address/1m

add chain=output action=add-dst-to-address-list protocol=tcp content="530 Login incorrect" \
address-list=ftp_blacklist address-list-timeout=3h

Тут как видно — мы смотрим на содержимое пакета, который возвращается тому, кто пытается подключиться, и в случае, если было 10 неудачных попытко подключения, адрес блокируется на 3 часа.

Команды взяты с ]]>вики микротика]]>.

0 0

Поделитесь статьей с друзьями в соц. сетях, возможно, она будет им полезна.


Если вам помогла статья, вы можете >>отблагодарить автора<<


Оставить комментарий