1. Блог
  2. Мануали

Захист MikroTik: базові правила Firewall для RouterOS 7

Захист MikroTik: базові правила Firewall для RouterOS 7

Роутер MikroTik із типовими налаштуваннями захищений непогано, але після скидання конфігурації або на хмарному роутері CHR файрвол порожній, і пристрій із публічною IP-адресою починають атакувати в перші ж хвилини. Нижче — мінімальний набір правил, який закриває роутер і мережу за ним, із поясненням кожного кроку.

Як влаштований файрвол RouterOS

Правила обробляються згори донизу до першого збігу, тому порядок важливий. Основних ланцюжків три:

  • input — трафік, адресований самому роутеру: WinBox, SSH, DNS, VPN;
  • forward — трафік, що проходить через роутер: з локальної мережі в інтернет і назад;
  • output — трафік, який створює сам роутер.

У прикладах ether1 — інтерфейс провайдера (WAN), bridge — локальна мережа 192.168.88.0/24. Підставте свої значення.

Крок 1. Списки інтерфейсів

Правила зручніше писати не для конкретних портів, а для списків:

/interface list
add name=WAN
add name=LAN
/interface list member
add list=WAN interface=ether1
add list=LAN interface=bridge

Крок 2. Захист самого роутера (input)

/ip firewall filter
add chain=input action=accept connection-state=established,related,untracked comment="Established"
add chain=input action=drop connection-state=invalid comment="Drop invalid"
add chain=input action=accept protocol=icmp comment="ICMP"
add chain=input action=accept in-interface-list=LAN comment="From LAN"
add chain=input action=drop comment="Drop everything else"

Що роблять правила:

  1. пропускають пакети вже встановлених з’єднань — це основна частина трафіку, вона обробляється першою й не навантажує процесор;
  2. відкидають некоректні пакети;
  3. дозволяють ping — він потрібен для діагностики;
  4. дозволяють доступ до роутера з локальної мережі;
  5. забороняють усе інше, зокрема будь-які підключення з інтернету.

Крок 3. Захист локальної мережі (forward)

/ip firewall filter
add chain=forward action=fasttrack-connection connection-state=established,related hw-offload=yes comment="FastTrack"
add chain=forward action=accept connection-state=established,related,untracked comment="Established"
add chain=forward action=drop connection-state=invalid comment="Drop invalid"
add chain=forward action=drop connection-state=new connection-nat-state=!dstnat in-interface-list=WAN comment="Drop from WAN not DSTNAT"

Останнє правило забороняє будь-які нові підключення з інтернету в локальну мережу, крім тих, для яких ви явно налаштували прокидання портів. FastTrack прискорює обробку встановлених з’єднань у кілька разів.

Крок 4. NAT

Якщо роутер роздає інтернет локальній мережі, потрібне правило маскарадингу:

/ip firewall nat
add chain=srcnat action=masquerade out-interface-list=WAN comment="Masquerade"

Крок 5. Доступ до роутера ззовні

Правила вище повністю закривають керування з інтернету. Якщо віддалений доступ потрібен, є три способи — від найнадійнішого до найменш бажаного.

Через VPN

Підніміть на роутері WireGuard і керуйте ним лише через тунель. Дозвольте порт VPN, розмістивши правило вище заборонного:

/ip firewall filter
add chain=input action=accept protocol=udp dst-port=13231 place-before=[find comment="Drop everything else"] comment="WireGuard"

З довірених адрес

/ip firewall address-list
add list=admins address=198.51.100.7
/ip firewall filter
add chain=input action=accept src-address-list=admins protocol=tcp dst-port=8291,22 place-before=[find comment="Drop everything else"] comment="Admins"

Із захистом від перебору

Якщо адреса адміністратора непостійна, додайте захист: після трьох нових підключень за хвилину адреса блокується на добу.

/ip firewall filter
add chain=input action=drop src-address-list=blacklist place-before=0 comment="Blacklist"
add chain=input action=add-src-to-address-list protocol=tcp dst-port=22,8291 connection-state=new src-address-list=stage2 address-list=blacklist address-list-timeout=1d place-before=[find comment="Drop everything else"]
add chain=input action=add-src-to-address-list protocol=tcp dst-port=22,8291 connection-state=new src-address-list=stage1 address-list=stage2 address-list-timeout=1m place-before=[find comment="Drop everything else"]
add chain=input action=add-src-to-address-list protocol=tcp dst-port=22,8291 connection-state=new address-list=stage1 address-list-timeout=1m place-before=[find comment="Drop everything else"]
add chain=input action=accept protocol=tcp dst-port=22,8291 place-before=[find comment="Drop everything else"] comment="Management"

Крок 6. Вимкніть зайві служби

Файрвол — не єдиний рубіж. Вимкніть усе, чим не користуєтеся:

/ip service
disable telnet,ftp,www,api,api-ssl
set ssh address=192.168.88.0/24
set winbox address=192.168.88.0/24

Параметр address додатково обмежує адреси, з яких служба приймає підключення. Якщо потрібен доступ ззовні, додайте до списку свої адреси або підмережу VPN.

Вимкніть виявлення сусідів і підключення за MAC-адресою на зовнішньому інтерфейсі:

/ip neighbor discovery-settings set discover-interface-list=LAN
/tool mac-server set allowed-interface-list=LAN
/tool mac-server mac-winbox set allowed-interface-list=LAN

Закрийте DNS-сервер роутера від запитів з інтернету. Правило Drop everything else у ланцюжку input уже це робить; якщо ви його не використовуєте, забороніть порт 53 на зовнішньому інтерфейсі явно — відкритий DNS-резолвер використовують для DDoS-атак.

Крок 7. Облікові записи

  • Створіть нового адміністратора з надійним паролем і видаліть стандартний запис admin:
/user add name=myadmin group=full password="надійний_пароль"
/user remove admin
  • Для SSH використовуйте ключі замість паролів.
  • Вимкніть невикористовувані пакети та інтерфейси.

Крок 8. Оновлення

Більшість масових зламів MikroTik відбувалися через вразливості в застарілих версіях RouterOS. Перевіряйте оновлення регулярно:

/system package update check-for-updates
/system package update install
/system routerboard upgrade

Остання команда оновлює завантажувач на апаратних роутерах; після неї потрібне перезавантаження.

Перевірка

Перегляньте лічильники правил — вони показують, які правила спрацьовують:

/ip firewall filter print stats

Перевірте, що з інтернету роутер не відповідає на портах керування: із зовнішнього комп’ютера виконайте nmap -Pn IP-адреса або скористайтеся онлайн-сканером портів.

Резервна копія конфігурації

Після налаштування збережіть конфігурацію в текстовому вигляді:

/export file=firewall-backup

Файл з’явиться в розділі Files — завантажте його й зберігайте окремо від роутера.

Що далі