Защита от DDoS-атак на уровне MikroTik: практическое руководство

оборудование микротик

Приготовьтесь к порции адреналина и знаний от вашей покорной слуги, Юли. IQ 110 — это не только для того, чтобы решать головоломки, но и чтобы изящно отфильтровывать тонны цифрового мусора, который ломится в вашу сеть. DDoS — это как слон в посудной лавке: грубо, громко и очень разрушительно. Но мы, сисадмины на MikroTik, — это те самые укротители слонов с бубном в одной руке и консолью в другой. Погнали!

DDoS на пороге: что вообще происходит?

Представьте, что ваш интернет-канал — это труба. Обычный трафик — это вода, которая течет ровно. DDoS — это когда в эту трубу начинают заталкивать бетон, асфальт и толпу разъяренных хомяков одновременно. Цель — забить её настолько, чтобы легитимные данные (ваши клиенты, ваши услуги) просто не могли просочиться.

MikroTik RouterOS — наш верный швейцарский нож. Он не даст «волшебной кнопки», но предоставит все отвёртки и гаечные ключи, чтобы собрать щит. Защита будет многослойной, как хороший торт. Или бронежилет.

Фильтруем как нинджа: основа основ — Firewall

Брандмауэр — это наша главная крепостная стена. Правила нужно выстраивать от более конкретных к более общим и в правильном порядке. Запомните это как «Отче наш».

Первый и главный принцип: Дропаем (отбрасываем) весь нежелательный трафик как можно раньше, в цепочке input (для трафика на сам роутер) и forward (для трафика через роутер).

Пример 1: Боремся с SYN-флудом (классика жанра)

SYN-флуд — это когда тебе стучатся в дверь и сразу сбегают, оставляя тебя с полуоткрытой дверью. Через секунду — снова. И так тысячи раз. Система захлёбывается. Лечим:

/ip firewall filter
add chain=input protocol=tcp tcp-flags=syn connection-state=new 
action=add-src-to-address-list address-list=syn_flood address-list-timeout=5s comment="Detect SYN flood"
add chain=input src-address-list=syn_flood action=drop comment="Drop SYN flood offenders" 

Что сделали? Первое правило ловит новые SYN-соединения и заносит их IP в лист syn_flood на 5 секунд. Если с одного IP их слишком много, второе правило его просто дропает. Элегантно и просто.

Пример 2: Отбиваемся от UDP-флуда (часто для DNS/амплификации)

UDP — это как письмо без обратного адреса. Кто-то шлёт тонны таких писем, а ваш роутер пытается на каждое ответить «адресат не найден». Исчерпываем ресурсы.

/ip firewall filter
add chain=input protocol=udp action=add-src-to-address-list 
address-list=udp_flood address-list-timeout=10s comment="Mark UDP flooders"
add chain=input src-address-list=udp_flood action=drop comment="Drop UDP flood" 

Пример 3: Защищаем конкретный сервис (например, веб на 80 порту)

Допустим, у вас за роутером висит веб-сервер. Открываем порт, но с умом.

/ip firewall filter
add chain=input protocol=tcp dst-port=80 src-address-list=allowed_ips action=accept comment=&quot;Allow <a href="https://it-apteka.com/2026/01/28/plaginy-wordpress-oblako-taksonomij-v-bokovuju-panel-bez-boli-i-shamanstva/" title="Плагины WordPress: облако таксономий в боковую панель (без боли и шаманства)"  data-wpil-monitor-id="178">web</a> from trusted&quot;
add chain=input protocol=tcp dst-port=80 connection-limit=10,32 action=add-src-to-address-list 
address-list=http_flooders address-list-timeout=1h comment=&quot;Catch web flooders&quot;
add chain=input protocol=tcp dst-port=80 src-address-list=http_flooders action=drop comment=&quot;Block web flooders&quot;
add chain=input protocol=tcp dst-port=80 action=drop comment=&quot;Drop everything else to web&quot; 

Видите логику? Сначала пускаем своих. Затем ловим тех, кто открывает больше 10 параллельных соединений за 32 секунды (параметры настраивайте!), и заносим в бан-лист. Всё остальное — долой!

RAW — тяжёлая артиллерия для самых отъявленных

Цепочка raw в MikroTik обрабатывает пакеты ДО connection tracking (таблицы соединений). Это суперэффективно при огромных атаках, чтобы не нагружать этот самый tracking.

Пример 4: Быстрое отражение атаки по порту (Port Flood)

Когда на вас льёт тонны мусора на случайный высокий порт.

/ip firewall raw
add chain=prerouting protocol=tcp dst-port=5000-6000 action=drop 
comment="Drop trash traffic to high ports" 

Или более умный вариант с лимитом:

/ip firewall raw
add chain=prerouting protocol=tcp dst-port=8080 limit=100,5 action=add-src-to-address-list 
address-list=raw_attackers address-list-timeout=30m comment="Catch port 8080 flood"
add chain=prerouting src-address-list=raw_attackers action=drop comment="Block caught attackers" 

Не забываем про соседей: защита сети клиентов (LAN)

Атака может приходить и из вашей же сети, если кто-то подхватил вирус. Включаем паранойю.

Пример 5: Блокировка поддельных (spoofed) адресов изнутри

Это когда пакет из вашей локальной сети пытается притвориться, что пришёл с другого адреса. Блокируем на раз!

/ip firewall filter
add chain=forward src-address=!192.168.88.0/24 in-interface=bridge-local action=drop 
comment=&quot;Drop spoofed LAN traffic (adjust <a class="wpil_keyword_link" href="https://it-apteka.com/category/networks/"   title="Сети" data-wpil-keyword-link="linked"  data-wpil-monitor-id="56">network</a>!)&quot;

Бонус: Полезные скрипты для мониторинга и быстрой реакции

Иногда нужно просто посмотреть, кто тут самый активный. Создаём простой скрипт для мониторинга TOP-10 атакующих IP:

/system script
add name=find_attackers source=":log info "Top 10 src-address by packets:"\n/ip firewall filter print stats where chain=input and packets&gt;1000 \\n sort-by=packets descending count=10"

Запустить его можно по расписанию или вручную, когда чувствуете, что «что-то пошло не так».

Итоги от Юли: Спокойствие, только спокойствие!

  1. Слои, слои, еще раз слои. Не надейтесь на одно правило.

  2. Логируйте и анализируйте. Заглядывайте в /log и используйте Torch (инструмент в WinBox) в момент атаки, чтобы понять её характер.

  3. Настройте ограничения (limit, connection-limit). Это ваша первая и часто самая эффективная линия обороны.

  4. Не бойтесь цепочки raw для сброса очевидного мусора без нагрузки на систему.

  5. Тестируйте. Устройте учебную «атаку» с помощью утилит (с осторожностью!) или просто попросите коллег нагенерировать трафика.

Запомните: абсолютной защиты нет. Но задача — поднять стоимость атаки для злоумышленника настолько, чтобы ему стало скучно, невыгодно, и он пошёл искать кого-то полегче. Ваш MikroTik при грамотной настройке станет таким «крепким орешком».

Удачи, и пусть ваши каналы будут чисты, а таблицы соединений — не переполнены!

Юлия К.
Author: Юлия К.

Поделитесь:

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Прокрутить вверх