На главную
Список моих blacklist.
В файлах .txt просто голые IP. Каждый список именован.
Например blacklist_22.txt. Значит IP адрес был замечен в том что пытался приконнектится на 22 порт. (туду куда не должен был конектится)
blacklist_DDoS-BAN.txt - Проводили DDOS атаку.
blacklist_DDoS-DNS.txt - Проводили DDOS атаку именно на ДНС сервера.
blacklist_Port-Scanners.txt - Сканировали порты.
blacklist_spamhaus.txt - Список берется со стороннего ресурса.
.
В папке mikrotik готовые скрипты для импорта в микротик, файлы с расширением rsc.
Все списки реально используются. В микротике в raw запрещают конект. Списки динамические на 5 дней, через 5 дней IP удалится из списка. (мне так удобно когда микротики обмениваются между собой.
Можно сформировать нечто подобное для других устройств...
Предупреждение! Не доверяйте файлам rsc. Там, по различным причинам, может оказаться не то что ожидаете, например: /system reset-configuration no-defaults=yes skip-backup=yes Не выполнять! Обнулит конфигурацию mikrotik!
Формируйте списки на своей стороне
.
Почему разные списки а не один... Мне так интереснее, переставляю правила фаервола местами и вижу где насобирало больше.
.
Для импорта в микротик использую обычную конструкцию:
/import file-name=$fileName; через execute, на всякий случай, если вдруг упадёт.
Сам файлик уже должен быть на микротике.
Я использую скрипт: скачивает, импортирует.
Если кому интересно то для примера скрипт с именем get_blacklist_21:
:local List "blacklist_21"
:local fileName ($List . ".rsc")
:log error ("start get ". $fileName)
/tool fetch url=("http://blacklist.depfin70.ru/blacklist/depfin/mikrotik/".$fileName) mode=http;
:delay 2s;
:if ([/file find name=$fileName] != "") do={
:log error ($List." list downloaded. Starting background import...");
/ip firewall address-list remove [find list=$List];
/execute script="/import file-name=\"$fileName\"";
# /import file-name=$fileName;
:delay 3s;
/file remove [find name=$fileName];
:log error ($List." background import finished. Temporary file removed.");
} else={
:log error ($fileName." file download failed!");
}
Скрипт для каждого листа свой (могу включать, отключать). Различаются только :local List "blacklist_21" - вписываю нужный лист...
Протокол именно HTTP (без S), потому что версия микротика 6.49.19 не смогла заработать , хотя 6.49.14 нормально работает. На 7 версии нужен HTTPS (на сайте оба работают)
В шедулере такое:
/system script run get_blacklist_21
/system script run get_blacklist_22
/system script run get_blacklist_179
/system script run get_blacklist_1723
/system script run get_blacklist_3128
/system script run get_blacklist_3389
/system script run get_blacklist_8088
/system script run get_blacklist_DDoS-BAN
/system script run get_blacklist_DDoS-DNS
/system script run get_blacklist_Port-Scanners
/system script run get_blacklist_spamhaus
Сами листы на сервере обновляю раз в сутки в час ночи.
Есть и "белые" списки, туда добавлял нужные организации (врядли они именно вам понадобятся), стоят, конечно, перед всеми этими запрещающими правилами.
Всего в списках примерно 40 000 адресов, конечно, количество "плавает" в зависимости от активности вредных дядек. Во время DDOSа количество доходило до 120 000. Это к тому что если ставить на "домашний" роутер то акуратнее с памятью.
Если у вас нет ресурсов выставленных в интернет то вам и не надо вся эта морока с blacklist. Просто "рубите" все входящие правилом типа:
/ip firewall raw add action=drop chain=prerouting comment="DROP ALL" disabled=no in-interface-list=WAN
Обязательно укажите интерфейс смотрящий в интернет. Одно правило заменит весь гиморой с фильтрами. Простенько и со вкусом. Одно рпавило - инимум ресурсов микротика, не проппустит ни кого.