1) Простая конфигурация с блокировкой на 25 порту
Первая конфигурация предназначена для ограничения одновременных подключений на 25й tcp порт. Добавляет в address-list «spammer» на 12 часов заданный ip-адрес. Не допускается более 30 одновременных соединений. Грубо, но эффективно. Однако, соответствует политике защищенной сети.
/ip firewall filter add action=drop chain=forward comment="bloack spam" disabled=no dst-port=25 protocol=tcp \ src-address-list=spammer add action=add-src-to-address-list address-list=spammer address-list-timeout=\ 1d chain=forward comment="detect spam" connection-limit=30,32 disabled=no \ dst-port=25 protocol=tcp
2) Блокировка бота с маркировкой SMTP
Вторая конфигурация более изящна и предназначена для борьбы со спам ботами и рассчитана на то, что бот при попытке соединиться с заданным smtp-сервером 1 раз при недоступности оного прекратит повторные попытки. IP-адрес первый раз попадает в address-list first-smtp, при повторной попытке — в approved-smtp. Первое соединение всегда отбрасывается, при этом генерируется icmp сообщение network-unreachable. Новые соединения маркируются в /ip firewall mangle c меткой smtp.
/ ip firewall mangle add chain=prerouting connection-state=new protocol=tcp src-port=1024-65535 dst-port=25 action=mark-connection new-connection-mark=smtp passthrough=no
/ ip firewall filter add action=jump chain=forward comment="anti-spam policy" connection-mark=smtp \ disabled=no jump-target=smtp-first-drop add action=add-src-to-address-list address-list=approved-smtp \ address-list-timeout=1d chain=smtp-first-drop comment="" disabled=no \ src-address-list=first-smtp add action=return chain=smtp-first-drop comment="" disabled=no \ src-address-list=approved-smtp add action=add-src-to-address-list address-list=first-smtp \ address-list-timeout=1d chain=smtp-first-drop comment="" disabled=no add action=reject chain=smtp-first-drop comment="" disabled=no reject-with=\ icmp-network-unreachable