Создание домашней сети на базе устройств MikroTik: Часть 6 — Firewall защита доступа

firewall-main Роутеры
Продолжение предыдущих статей по организации единой локальной сети.
 
Содержание цикла статей:
  1. Создание домашней сети на базе устройств MikroTik: Часть 1
  2. Создание домашней сети на базе устройств MikroTik: Часть 2 — Настройка hAP ac
  3. Создание домашней сети на базе устройств MikroTik: Часть 3 — Настройка RB750gr3 hEX
  4. Создание домашней сети на базе устройств MikroTik: Часть 4 — Создание OpenVPN туннеля
  5. Создание домашней сети на базе устройств MikroTik: Часть 5 — Создание EoIP туннеля
  6. Создание домашней сети на базе устройств MikroTik: Часть 6 — Firewall защита доступа (Вы тут)
  7. Создание домашней сети на базе устройств MikroTik: Часть 7 — Firewall правильное перенаправление портов в сети с двумя шлюзами
  8. Создание домашней сети на базе устройств MikroTik: Часть 8 — Установка и настройка MikroTik DUDE Network Monitor
Будьте внимательны, в этой статье рассматривается только Firewall Filter. Если Вы видите, что у Вас нет интернета после настройки, скорее всего вы не прошли предыдущие шаги настройки роутера. В них есть пункт Firewall NAT, где производится специальная настройка позволяющая устройствам в сети выходить в интернет.
Для тех кого интересует финальный результат и более лучшая защита, то рекомендую после прочтения данной статьи перейти к статье: MikroTik : RouterOS : Стучимся к себе домой. Firewall Filter PortKnocking
Если Вы хотите изучить MikroTik, то это можно реализовать с помощью специального онлайн-курса "Настройка оборудования MikroTik". В курсе изучаются все темы из официальной программы MTCNA, а автором курса является официальный тренер MikroTik. Материал подходит и тем, кто уже давно работает с оборудованием MikroTik, и тем, кто даже не держал его в руках. В состав курса входят 162 видеоурока, 45 лабораторных работ и вопросы для самопроверки с конспектом. Кстати я получал сертификат MTCNA именно тут!

В прошлых частях мы с Вами настроили единую локальную сеть через EoIP туннель построенном поверх OpenVPN.

К каким результатам мы пришли:
У нас встает вопрос безопасности нашей локальной сети, ведь китайские боты не спят и постоянно сканируют доступное сетевое пространство на наличие дыр и уязвимостей.
Имея статический IP мы подвержены риску быть взломанными. Т.к. наш статический IP доступен в интернете, он может подвергаться различного рода «атакам из вне».
Поэтому нам нужно сделать так, чтобы только мы могли подключаться к нашим роутерам и другим сервисам в локальной сети.
В принципе жесткую защиту мы делать не будем. У нас ведь не корпоративная сеть, а домашняя. Данной статьей мы попробуем закрыть самые распространенные пробелы в защите нашего роутера и локальной сети в общем. Не будем допускать банальных ошибок.

Организацию удаленного подключения мы рассмотрим в Седьмой статье т.к. эта статья получилась достаточно большой по наполнению.
Ну что, поехали…

За все операции обработки трафика в сетевых устройствах отвечает так называемый «Межсетевой экран» (Eng — Firewall)
Именно он определяет куда отправлять тот или иной пакет, как обрабатывать соединения и многое, многое другое…
Чтобы охватить весь спектр работы Firewall-а не хватит не только одной статьи, но и 10 или 20 статей точно. Настолько велики его возможности и вариации применения.
Кстати это касается не только MikroTik RouterOS, а принципа фильтрации трафика в общем в операционных системах (даже на Windows)!

Официальные данные на MikroTik Wiki: IP/Firewall/Filter [ENG]

Давайте взглянем, где находится этот самый Межсетевой экран в наших устройствах(ведь RouterOS одинакова на всем оборудовании MikroTik):
Он находится по пути IP -> Firewall

ip-firewall
Путь до межсетевого экрана
firewall-filter-rules
Окно для ввода правил фильтрации

Кратко пробежимся по основным вкладкам Firewall:
1 — Filter Rules — тут основные разрешающие и блокирующие правила.
2 — NAT — тут формируются перенаправления трафика.
3 — Mangle — тут происходит маркировка соединений и пакетов, отлов определенного вида трафика для дальнейшей его обработки.
Остальные вкладки пока рассматривать не будем, они нам не пригодятся.
4 — Raw — тут можно правилами отловить паразитный трафик и тем самым снизить нагрузку на CPU. Полезно для смягчения DOS атак.
5 — Service Ports — Для некоторых сетевых протоколов требуется прямое двустороннее соединение между конечными точками. Это не всегда возможно, поскольку трансляция сетевых адресов широко используется для подключения клиентов к сети. Это подменю позволяет настроить «помощники отслеживания соединений» для вышеупомянутых протоколов. Эти «помощники» используются для обеспечения правильного обхода NAT.
6 — Connections — тут отображаются все текущие соединения проходящие через маршрутизатор.
7 — Address List — тут списки адресов брандмауэра позволяют пользователю создавать списки IP-адресов, сгруппированных под общим именем. Затем фильтры брандмауэра, Mangle и NAT могут использовать эти списки адресов для сопоставления пакетов с ними.
8 — Layer7 Protocols — тут можно создавать шаблоны для поиска в потоках ICMP / TCP / UDP. L7 собирает первые 10 пакетов соединения или первые 2KB соединения и ищет шаблон в собранных данных.

Часть терминов может показаться непонятной, но в этом нет ничего страшного, мы будем работать только с первым пунктом Filter Rules. Хотя в нем тоже, очень много вариантов создания правил.
Сразу нужно оговориться, что полной безопасности Вам никто не обеспечит и это важно понимать! Но боятся не стоит, мы ведь не популярная корпорация за которой ведется промышленный шпионаж, нам достаточно превентивных мер ))))

Конфигурация по умолчанию:

На MikroTik Wiki представлена базовая конфигурация в таком виде: Basic universal firewall script [ENG]

Вы можете использовать её или нет )
Я делаю несколько по своему, возможно что-то тут не идеально, и Вы обладая большим опытом подскажите мне в комментариях, как сделать лучше ))

 
 
1. Перейдем к созданию правил в Firewall Filter Rules

Отступление: А ты засейвился? (Кнопка Safe Mode)
Все правила добавленные в таблицу применяются последовательно, сверху вниз. Будьте осторожны не добавляйте сразу правило, блокирующее все что только можно. Вы можете потерять доступ к роутеру и тогда придется его сбрасывать и перенастраивать заново.
Я рекомендую использовать магическую кнопку Safe Mode для таких целей. Если эта кнопка нажата и Вас отключит от роутера, настройки вернутся к моменту нажатия на эту кнопку. Очень полезная вещь, особенно если Вы работаете удаленно.
safemodebutton
Magic Button =)

Правила добавляются по уже знакомой нам кнопке плюс…

newfirewallrule-add
Добавление правил

1.1. Перво наперво нам нужно разрешить уже установленные(Established) и связанные(Related) соединения и сбросить некорректные(Invalid) соединения для проходящих (маршрутизируемых) пакетов в цепочке Forward и предназначенных локальной системе в цепочке Input.
Так мы снизим нагрузку на маршрутизатор обработав эти данные сразу.
Зачем повторно обрабатывать эти соединения если они уже и так установлены или неизвестны. Экономим ресурсы процессора. Т.е. эти правила будут в самом начале нашей таблицы.

Добавление правил 1.1. через WinBox (Изображения)
firewall-filter-1.1-1
Правило 0
firewall-filter-accept
Правило 0
firewall-filter-1.1-2
Правило 1
firewall-filter-drop
Правило 1
firewall-filter-1.1-3
Правило 2
firewall-filter-accept
Правило 2
firewall-filter-1.1-4
Правило 3
firewall-filter-drop
Правило 3
Консольно:

/ip firewall filter
add action=accept chain=forward comment="1.1. Forward and Input Established and Related connections" connection-state=established,related
add action=drop chain=forward connection-state=invalid
add action=accept chain=input connection-state=established,related
add action=drop chain=input connection-state=invalid
Дополнительно: Защита локальной сети от атак из публичного интернета
Очень часто люди используют настройки по умолчанию на своих маршрутизаторах. Это также означает, что можно угадать, какой локальный адрес используется за маршрутизатором. Обычно это 192.168.88.0/24 для устройств, работающих на RouterOS. Это означает, что в общедоступной сети злоумышленник может создать простой маршрут, который говорит, что 192.168.88.0/24 находится за вашим общедоступным IP-адресом.
Таким образом злоумышленник может атаковать ваши локальные сетевые устройства.
Чтобы защитить вашу локальную подсеть от этих атак, можно использовать очень простое правило фильтра брандмауэра. Это правило отбрасывает все пакеты, которые предназначены для локальной сети, но не являются NAT

/ip firewall filter
add action=drop chain=forward connection-nat-state=!dstnat connection-state=new in-interface-list=Internet

 
 
1.2. Далее необходимо обеспечить защиту. Продолжим мы с Лимита входящих соединений.
Это даст нам некоторую защиту от DDoS атак.

Далее, большинство правил будут включать в себя параметр Списков интерфейсов In Interface List. Это замена для параметра In Interface.
Позволяет группировать интерфейсы и применять правила Firewall обращаясь сразу к нескольким интерфейсам.
Более подробно про данные списки можно почитать в отдельной статье: MikroTik RouterOS – Списки интерфейсов “Interface List”
Чтобы дальнейшие правила отработали корректно Вы должны внести WAN интерфейс в список Internet, а все локальные интерфейсы в список Local.
Сами списки также нужно создать. Имена списков Вы можете задавать свои не обязательно, как у меня.
Вся информация по тому, как это делать по ссылке выше в статье MikroTik RouterOS – Списки интерфейсов “Interface List”
Добавление правил 1.2. через WinBox (Изображения)
firewall-filter-1.2-1
Правило 4
firewall-filter-1.2-2
Правило 4
firewall-filter-1.2-3
Правило 4
firewall-filter-1.2-4
Правило 5
firewall-filter-1.2-5
Правило 5
firewall-filter-1.2-6
Правило 5
firewall-filter-1.2-7
Правило 5
Консольно:

/ip firewall filter
add action=add-src-to-address-list address-list=ddos-blacklist address-list-timeout=1d chain=input comment="1.2. DDoS Protect - Connection Limit" connection-limit=100,32 in-interface-list=Internet protocol=tcp
add action=tarpit chain=input connection-limit=3,32 protocol=tcp src-address-list=ddos-blacklist

 
 
1.3. Следом идет защита от SYN флуда.
Что это такое можно почитать тут: https://ru.wikipedia.org/wiki/SYN-флуд или в более профильных изданиях.
Защищать мы будем, как проходящий трафик, так и входящий трафик. Путем создания отдельной цепочки SYN-Protect

Добавление правил 1.3. через WinBox (Изображения)
firewall-filter-1.3-1
Правило 6
firewall-filter-1.3-2
Правило 6
firewall-filter-1.3-3
Правило 6
firewall-filter-1.3-4
Правило 7
firewall-filter-1.3-5
Правило 7
firewall-filter-1.3-6
Правило 7
firewall-filter-1.3-7
Правило 8
firewall-filter-1.3-8
Правило 8
firewall-filter-1.3-9
Правило 8
firewall-filter-1.3-10
Правило 8
firewall-filter-1.3-11
Правило 9
firewall-filter-1.3-12
Правило 9
firewall-filter-drop
Правило 9
Консольно:

/ip firewall filter
add action=jump chain=forward comment="1.3. DDoS Protect - SYN Flood" connection-state=new jump-target=SYN-Protect protocol=tcp tcp-flags=syn
add action=jump chain=input connection-state=new in-interface-list=Internet jump-target=SYN-Protect protocol=tcp tcp-flags=syn
add action=return chain=SYN-Protect connection-state=new limit=200,5:packet protocol=tcp tcp-flags=syn
add action=drop chain=SYN-Protect connection-state=new protocol=tcp tcp-flags=syn

 
 
1.4. Защита от сканеров портов (PSD — Port Scan Detection).
На счет данного правила есть разные мнения, кто-то считает, что оно не нужно, кто-то, что нужно.
Я же предпочитаю немного себя подстраховать. Тем более, что благодаря данному правилу Address Lists заполняется какими-то забугорными IP адресами )

Добавление правил 1.4. через WinBox (Изображения)
firewall-filter-1.4-1
Правило 10
firewall-filter-1.4-2
Правило 10
firewall-filter-drop
Правило 10
firewall-filter-1.4-3
Правило 11
firewall-filter-1.4-4
Правило 11
firewall-filter-1.4-5
Правило 11
Консольно:

/ip firewall filter
add action=drop chain=input comment="1.4. Protected - Ports Scanners" src-address-list="Port Scanners"
add action=add-src-to-address-list address-list="Port Scanners" address-list-timeout=none-dynamic chain=input in-interface-list=Internet protocol=tcp psd=21,3s,3,1

 
 
1.5. Защита WinBox порта от перебора.
Логика обработки тут следующая.
1. Когда мы подключаемся к роутеру на порт 8291, то мы имеет состояние соединения new, правило добавляет наш IP в список уровня 1
2. Если мы не авторизовались и отключились, а после снова пытаемся подключиться, то мы опять будем иметь состояние соединения new. При этом наш IP адрес уже будет в Списке 1
Соответственно наш IP попадет в список уровня 2 и т.д до тех пор пока нас не заблокирует Правило 13, и уже после этого Правило 12 не будет нам давать возможность новых подключений к роутеру по порту 8291.
3. А если мы авторизовались, то наше соединение перейдет из состояния new в состояние established и обработка соединения уже будет вестись самым верхним правилом 2, которое нам все разрешает.
По сути у злоумышленника может быть всего четыре возможности Авторизоваться у нас на роутере через порт WinBox

Добавление правил 1.5. через WinBox (Изображения)
firewall-filter-1.5-1
Правило 12
firewall-filter-1.5-2
Правило 12
firewall-filter-drop
Правило 12
firewall-filter-1.5-3
Правило 13
firewall-filter-1.5-4
Правило 13
firewall-filter-1.5-5
Правило 13
firewall-filter-1.5-6
Правило 14
firewall-filter-1.5-7
Правило 14
firewall-filter-1.5-8
Правило 14
firewall-filter-1.5-9
Правило 15
firewall-filter-1.5-10
Правило 15
firewall-filter-1.5-11
Правило 15
firewall-filter-1.5-12
Правило 16
firewall-filter-1.5-13
Правило 16
firewall-filter-1.5-14
Правило 17
firewall-filter-accept
Правило 17
Консольно:

/ip firewall filter
add action=drop chain=input comment="1.5. Protected - WinBox Access" src-address-list="Black List Winbox"
add action=add-src-to-address-list address-list="Black List Winbox" address-list-timeout=none-dynamic chain=input connection-state=new dst-port=8291 in-interface-list=Internet log=yes log-prefix="BLACK WINBOX" protocol=tcp src-address-list="Winbox Stage 3"
add action=add-src-to-address-list address-list="Winbox Stage 3" address-list-timeout=1m chain=input connection-state=new dst-port=8291 in-interface-list=Internet protocol=tcp src-address-list="Winbox Stage 2"
add action=add-src-to-address-list address-list="Winbox Stage 2" address-list-timeout=1m chain=input connection-state=new dst-port=8291 in-interface-list=Internet protocol=tcp src-address-list="Winbox Stage 1"
add action=add-src-to-address-list address-list="Winbox Stage 1" address-list-timeout=1m chain=input connection-state=new dst-port=8291 in-interface-list=Internet protocol=tcp
add action=accept chain=input dst-port=8291 in-interface-list=Internet protocol=tcp

 
 
1.6. Защита OpenVPN порта от перебора.
Данная защита делается абсолютно аналогично пункту 1.5.
Единственным отличием будут названия OpenVPN вместо WinBox и входящий TCP порт 1194
Поэтому просто повторяем действия
Консольно:

/ip firewall filter
add action=drop chain=input comment="1.6. Protected - OpenVPN Connections" src-address-list="Black List OpenVPN"
add action=add-src-to-address-list address-list="Black List OpenVPN" address-list-timeout=none-dynamic chain=input connection-state=new dst-port=1194 in-interface-list=Internet log=yes log-prefix="BLACK OVPN" protocol=tcp src-address-list="OpenVPN Stage 3"
add action=add-src-to-address-list address-list="OpenVPN Stage 3" address-list-timeout=1m chain=input connection-state=new dst-port=1194 in-interface-list=Internet protocol=tcp src-address-list="OpenVPN Stage 2"
add action=add-src-to-address-list address-list="OpenVPN Stage 2" address-list-timeout=1m chain=input connection-state=new dst-port=1194 in-interface-list=Internet protocol=tcp src-address-list="OpenVPN Stage 1"
add action=add-src-to-address-list address-list="OpenVPN Stage 1" address-list-timeout=1m chain=input connection-state=new dst-port=1194 in-interface-list=Internet protocol=tcp
add action=accept chain=input dst-port=1194 in-interface-list=Internet protocol=tcp

 
 
1.7. Разрешающее правило для прохождения любого трафика по VPN туннелям.

Добавление правил 1.7. через WinBox (Изображения)
firewall-filter-1.5-15
Правило 24
firewall-filter-accept
Правило 24
Консольно:

/ip firewall filter
add action=accept chain=input comment="1.7. Access OpenVPN Tunnel Data" in-interface-list=VPN

 
 
1.8. Разрешающее правило для прохождения только нормальных PING запросов.

Добавление правил 1.8. через WinBox (Изображения)
firewall-filter-1.8-1
Правило 25
firewall-filter-1.8-2
Правило 25
firewall-filter-accept
Правило 25
Консольно:

/ip firewall filter
add action=accept chain=input comment="1.8. Access Normal Ping" in-interface-list=Internet limit=50/5s,2:packet protocol=icmp

 
 
1.9. Запрещающее правило
Нормально закрытый Firewall должен обязательно обладать таким правилом. Иначе все бессмысленно.
Выше мы обрабатываем соединения и разрешаем только то, что нам необходимо. Все остальное блокируем.
Это намного правильней, чем Разрешить все и блокировать только нужное Вам. А всего, что нужно заблокировать Вы наверняка не знаете.

Добавление правил 1.9. через WinBox (Изображения)
firewall-filter-1.9-1
Правило 26
firewall-filter-drop
Правило 26
Консольно:

/ip firewall filter
add action=drop chain=input comment="1.9. Drop All Other" in-interface-list=Internet

 
 
2. Для ленивых
Если Вы дочитали до конца, значит у Вас пытливый ум и Вы хорошо представляете с чем столкнулись. Вы молодец.
Еще раз хотелось бы обозначить, что данная конфигурация не является идеальной. Я просто старался показать некоторые способы фильтрации трафика. Вам решать, использовать это у себя простым копипастом или подумать и сделать лучше! Но я уверен, что моё решение тоже не плохое =)

Все вышеизложенное в едином виде:

firewall-filter-all
 
Консольно:

/ip firewall filter
add action=accept chain=forward comment="1.1. Forward and Input Established and Related connections" connection-state=established,related
add action=drop chain=forward connection-state=invalid
add action=drop chain=forward connection-nat-state=!dstnat connection-state=new in-interface-list=Internet
add action=accept chain=input connection-state=established,related
add action=drop chain=input connection-state=invalid
add action=add-src-to-address-list address-list=ddos-blacklist address-list-timeout=1d chain=input comment="1.2. DDoS Protect - Connection Limit" connection-limit=100,32 in-interface-list=Internet protocol=tcp
add action=tarpit chain=input connection-limit=3,32 protocol=tcp src-address-list=ddos-blacklist
add action=jump chain=forward comment="1.3. DDoS Protect - SYN Flood" connection-state=new jump-target=SYN-Protect protocol=tcp tcp-flags=syn
add action=jump chain=input connection-state=new in-interface-list=Internet jump-target=SYN-Protect protocol=tcp tcp-flags=syn
add action=return chain=SYN-Protect connection-state=new limit=200,5:packet protocol=tcp tcp-flags=syn
add action=drop chain=SYN-Protect connection-state=new protocol=tcp tcp-flags=syn
add action=drop chain=input comment="1.4. Protected - Ports Scanners" src-address-list="Port Scanners"
add action=add-src-to-address-list address-list="Port Scanners" address-list-timeout=none-dynamic chain=input in-interface-list=Internet protocol=tcp psd=21,3s,3,1
add action=drop chain=input comment="1.5. Protected - WinBox Access" src-address-list="Black List Winbox"
add action=add-src-to-address-list address-list="Black List Winbox" address-list-timeout=none-dynamic chain=input connection-state=new dst-port=8291 in-interface-list=Internet log=yes log-prefix="BLACK WINBOX" protocol=tcp src-address-list="Winbox Stage 3"
add action=add-src-to-address-list address-list="Winbox Stage 3" address-list-timeout=1m chain=input connection-state=new dst-port=8291 in-interface-list=Internet protocol=tcp src-address-list="Winbox Stage 2"
add action=add-src-to-address-list address-list="Winbox Stage 2" address-list-timeout=1m chain=input connection-state=new dst-port=8291 in-interface-list=Internet protocol=tcp src-address-list="Winbox Stage 1"
add action=add-src-to-address-list address-list="Winbox Stage 1" address-list-timeout=1m chain=input connection-state=new dst-port=8291 in-interface-list=Internet protocol=tcp
add action=accept chain=input dst-port=8291 in-interface-list=Internet protocol=tcp
add action=drop chain=input comment="1.6. Protected - OpenVPN Connections" src-address-list="Black List OpenVPN"
add action=add-src-to-address-list address-list="Black List OpenVPN" address-list-timeout=none-dynamic chain=input connection-state=new dst-port=1194 in-interface-list=Internet log=yes log-prefix="BLACK OVPN" protocol=tcp src-address-list="OpenVPN Stage 3"
add action=add-src-to-address-list address-list="OpenVPN Stage 3" address-list-timeout=1m chain=input connection-state=new dst-port=1194 in-interface-list=Internet protocol=tcp src-address-list="OpenVPN Stage 2"
add action=add-src-to-address-list address-list="OpenVPN Stage 2" address-list-timeout=1m chain=input connection-state=new dst-port=1194 in-interface-list=Internet protocol=tcp src-address-list="OpenVPN Stage 1"
add action=add-src-to-address-list address-list="OpenVPN Stage 1" address-list-timeout=1m chain=input connection-state=new dst-port=1194 in-interface-list=Internet protocol=tcp
add action=accept chain=input dst-port=1194 in-interface-list=Internet protocol=tcp
add action=accept chain=input comment="1.7. Access OpenVPN Tunnel Data" in-interface-list=VPN
add action=accept chain=input comment="1.8. Access Normal Ping" in-interface-list=Internet limit=50/5s,2:packet protocol=icmp
add action=drop chain=input comment="1.9. Drop All Other" in-interface-list=Internet

Бонус:
Работая с Firewall на родительском hEx роутере, обнаружил большой объем заблокированного трафика.
Решил посмотреть, в чем дело, включил логирование в правилах и обнаружил интересную ситуацию.
Оказалось, что местный провайдер не закрыл широковещательный трафик службы имен NetBIOS Name Service — UDP порт 137 (Остальные порты и информация: https://ru.wikipedia.org/wiki/NetBIOS)
И какой-то «Сосед» воткнул интернет кабель в простой ПК с Windows, тем самым создав тот самый паразитный трафик. Такие запросы с одного ПК могут занимать около 30 кбит/сек на вашем WAN порту.
Думаю можно себе представить если таких ПК в сети будет 100-150. Написали провайдеру, а пока он латает свои дыры, добавил правило блокировки. Только не в Firewall Filter, а в Firewall Raw.
Данная таблица полезна для уменьшения нагрузки на CPU и позволяет блокировать трафик на этапе Prerouting-а
Вот это правило:

/ip firewall raw
add action=drop chain=prerouting dst-port=137,138,139 in-interface-list=Internet protocol=udp

Бонус 2:

Правила для роутера за серым IP провайдера
Для роутера за серым IP провайдера я оставил только такие правила. Даже не смотря на то, что IP серый, доверять сети провайдера ни в коем случае не стоит.

/ip firewall filter
add action=fasttrack-connection chain=forward connection-state=established,related
add action=accept chain=forward comment="ALLOW - Established, Related and connections" connection-state=established,related
add action=accept chain=input connection-state=established,related
add action=drop chain=forward comment="DROP - Invalid connections" connection-state=invalid
add action=drop chain=input connection-state=invalid
add action=jump chain=input comment="DDoS - SYN flood protection" connection-state=new in-interface-list=Internet jump-target=SYN-Protect protocol=tcp tcp-flags=syn
add action=return chain=SYN-Protect limit=200,5:packet tcp-flags=""
add action=add-src-to-address-list address-list=ddos-blacklist address-list-timeout=1w3d chain=SYN-Protect log-prefix="DDoS: SYN-Protect" tcp-flags=""
add action=jump chain=input comment="DDoS - Main protection" connection-state=new in-interface-list=Internet jump-target=DDoS-Protect
add action=return chain=DDoS-Protect dst-limit=15,15,src-address/10s
add action=add-src-to-address-list address-list=ddos-blacklist address-list-timeout=1w3d chain=DDoS-Protect log-prefix="DDoS: MAIN-Protect"
add action=drop chain=input comment="DROP - Block all other input/forward connections on the WAN" in-interface-list=Internet
add action=drop chain=forward in-interface-list=Internet
/ip firewall raw
add action=drop chain=prerouting comment="DDoS - Drop blacklist IP" in-interface-list=Internet src-address-list=ddos-blacklist

 
 
Благодарю Вас за Ваше время.
Организацию удаленного доступа я вынес в следующую статью:
Создание домашней сети на базе устройств MikroTik: Часть 7 — Firewall правильное перенаправление портов в сети с двумя шлюзами

Всего хорошего на просторах Интернета 😉

Список всех статей в хронологическом порядке: История статей

Поддержка блога
Если Вам не безразлична судьба блога или Вы просто хотите отблагодарить Автора за его труд, смело переходите на страницу Поддержки, там описана вся информация, по тому, как это сделать проще простого =)

UPD 11.10.2018:
Статья обновлена исходя из опыта эксплуатации и дальнейшего перехода на работу со Списками интерфейсов
Для понимания, что это такое, изучите статью MikroTik RouterOS – Списки интерфейсов “Interface List”

UPD 12.08.2019:
В начало статьи добавлена заметка. Ряд читателей почему-то думает, что эта статья это вся настройка Firewall и удивляется, что нет интернета 🙂
Будьте внимательней!

UPD 05.10.2019:
Для тех кого интересует финальный результат и более лучшая защита, то рекомендую после прочтения данной статьи перейти к статье: MikroTik : RouterOS : Стучимся к себе домой. Firewall Filter PortKnocking

UPD: 31.03.2020:
Добавлен «Бонус 2» с правилами для роутера за серым IP провайдера

Хочешь получать уведомления о выходе новых статей?
Loading
Если Вы хотите изучить MikroTik, то это можно реализовать с помощью специального онлайн-курса "Настройка оборудования MikroTik". В курсе изучаются все темы из официальной программы MTCNA, а автором курса является официальный тренер MikroTik. Материал подходит и тем, кто уже давно работает с оборудованием MikroTik, и тем, кто даже не держал его в руках. В состав курса входят 162 видеоурока, 45 лабораторных работ и вопросы для самопроверки с конспектом. Кстати я получал сертификат MTCNA именно тут!
GregoryGost

Мир интересен, если вы достаточно любопытны!!!

Оцените автора
GREGORY GOST
Добавить комментарий

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

  1. Артем

    В правиле
    add action=accept chain=forward comment=»ALLOW — Established, Related and connections» connection-state=established,related,untracked

    untracked что это и за что отвечает, почему в правиле вначале статьи нету untracked а в бонус2 появилось

    Ответить
    1. GregoryGost автор

      untracked — это пакеты не попадающие в Connection Tracker. Эти пакеты появляются когда есть правило в /ip firewall raw с action=notrack
      По сути их можно также, как и established,related пропускать до основных правил /ip firewall filter для снижения нагрузки на CPU.
      В свою очередь правила с action=notrack применяются в основном для работы с IPsec

      Я проводил эксперименты с IPsec и у меня остались включенными untracked в /ip firewall filter
      Поправил Бонус 2, чтобы не вводить в заблуждение 🙂

  2. Максим

    Добрый день! Спасибо за статью. Подскажите, а для домашнего роутера, который находится за NAT и с серым ip можно отключить большинство правил?

    Ответить
    1. GregoryGost автор

      Я определил для себя небольшой набор правил. Посмотрите в конце статьи «Бонус 2»

  3. Игорь

    Добрый день, хорошая статья, спасибо за проделанную работу.
    Есть вопрос: на разных сайтах по разному написано про защиту от SYN флуда и DDos, много кто советует ставить эти правила в самом верху списка firewall, у вас же они в середине. Как правильно с вашей точки зрения делать? И у вас нет правила FastTrack, как правильно и где его размещать, выше всех правил или как? Особенно имея ipsec…

    Ответить
    1. GregoryGost автор

      Благодарю за комментарий. Рад, что эта работа полезна!

      Как известно правила обрабатываются сверху вниз по списку. Т.е. идет сравнение каждого нового соединения с правилом до тех пор пока не встретится нужное совпадение.
      Для себя я вывел такой принцип:
      1. Первыми должны идти правила для Forward трафика и различные разрешающие правила, чтобы быстрее обрабатывался разрешенный трафик. Так меньше нагрузка на CPU. Это важно для маломощных роутеров.
      Тут же должно быть и правило FastTrack, причем оно должно быть вообще в самом верху, над всеми правилами.
      Правило FastTrack должно ставится для forward трафика и IPsec тут не играет никакой роли. IPsec работает в цепочках input и output, вот для них нужно учитывать IPsec.
      2. Далее идут различные проверки и блокировки для Input трафика.
      3. Часть из блокировок, в том числе различные Black листы необходимо обрабатывать вообще в другой вкладке Firewall RAW т.к. правила в таблице RAW(prerouting) отрабатывают раньше, чем Firewall Filter

  4. Александр

    Вы пишете «Оказалось, что местный провайдер не закрыл широковещательный трафик службы имен NetBIOS Name Service – UDP порт 137. И назначили правило»
    /ip firewall raw
    add action=drop chain=prerouting dst-port=137,138,139 in-interface-list=Internet protocol=udp

    И как с таким правилом будет работать внутрення сеть с шарами NetBIOS?
    Люди читаю и верят вам.

    Ответить
    1. GregoryGost автор

      Александр, здравствуйте.
      Вероятно вы были не внимательны.

      Подскажите, что по вашему делает пункт in-interface-list=Internet в правиле?

      Правило составлено корректно и влияет исключительно на запросы из сети провайдера, а не на NETBIOS запросы внутренней сети.

  5. Алексей

    Настроил файр по вашей статье. Полгода полет был нормальный, но потом провайдер стал блокировать нам интернет по причине атаки на их ДНС сервер. После всестороннего изучения конфигурации, обнаружилось, что на микротике не закрыт 53 порт. Пришлось добавить еще 2 правила —
    # Блокируем DNS запросы на внешний интерфейс
    add action=drop chain=input comment=»Drop DNS» connection-state=new dst-port=53 in-interface=WAN protocol=udp
    add action=drop chain=input connection-state=new dst-port=53 in-interface=WAN protocol=tcp

    Кроме того пришлось доработать правило ПИНГ —
    # Фильтруем полезный ICMP
    add chain=icmp protocol=icmp icmp-options=0:0 action=accept comment=»ICMP echo reply»
    add chain=icmp protocol=icmp icmp-options=3:0 action=accept comment=»ICMP net unreachable»
    add chain=icmp protocol=icmp icmp-options=3:1 action=accept comment=»ICMP host unreachable»
    add chain=icmp protocol=icmp icmp-options=3:4 action=accept comment=»ICMP host unreachable fragmentation required»
    add chain=icmp protocol=icmp icmp-options=4:0 action=accept comment=»ICMP allow source quench»
    add chain=icmp protocol=icmp icmp-options=8:0 action=accept comment=»ICMP allow echo request»
    add chain=icmp protocol=icmp icmp-options=11:0 action=accept comment=»ICMP allow time exceed»
    add chain=icmp protocol=icmp icmp-options=12:0 action=accept comment=»ICMP allow parameter bad»
    add chain=icmp action=drop comment=»ICMP deny all other types»
    Ну вот как-то так.

    Ответить
    1. GregoryGost автор

      Алексей, приветствую!
      Благодарю за ваш комментарий.

      Судя по тому, что вы столкнулись с проблемой DNS, я могу сделать вывод, что ваш Firewall настроен не совсем по этой статье.
      Обратите внимание на последнее правило 1.9 (add action=drop chain=input comment="1.9. Drop All Other" in-interface-list=Internet)
      Данное правило закрывает оба ваши правила по DNS т.к. запрещает, все, что не разрешено выше.

      По вопросу ICMP, я пришел к полному закрытию Firewall и использую Port_Knocking(вернее ICMP_Knocking) для доступа из вне. Соответственно ICMP снаружи также недоступен и мой статический IP полностью закрыт для злоумышленников.
      В целом если вы не стремитесь к таким блокировкам, то ограничение типов и кодов ICMP вполне верный шаг. Главное понимать, какой тип и за что отвечает 🙂

  6. Александр

    Добрый день.
    Я настроил Firewall по вашей статье, но я включил UPnP в настройках. На вкладке NAT увидел появившееся проброшенные порты. А вносить изменения в правила Firewall нужно для корректной работы torrent-клиентов? А то у меня какая-то скорость печальная.

    Ответить
    1. GregoryGost автор

      Александр,
      UPnP для того и создан, чтобы не вносить правила в Firewall вручную. Если приложение поддерживает UPnP, то соответствующие правила появятся в Firewall.
      Важное замечание, набор сетевых протоколов UPnP не является безопасным!
      И скорость печальная у вас не из-за UPnP или Firewall, ищите источник проблемы в другом месте.

  7. Vitaly

    Добрый день! Благодарю автора за информацию выложенную на этом сайте. У меня такой вопрос: Как ограничить доступ(управление winbox) к роутеру по mac из вне?

    Ответить
    1. GregoryGost автор

      Здравствуйте!
      Спасибо вам, за комментарий 🙂

      Уточните из какого «вне» вы хотите ограничить доступ?

      Обычно делается так:
      В /ip neighbors отключаются через discovery interfaces те интерфейсы на которых не нужно обнаружение. А точнее указываются на каких оно должно быть активно. Если используете Interface List, то указываете локальную сеть например.
      Аналогично в /tool MAC-server
      Так вы отключите обнаружение на интерфейсах смотрящих в сторону провайдера.

      Ну и сам Firewall должен быть настроен корректно, чтобы на 8291 порт никто не ломился.

  8. Евлампий

    Благодарю за статью, всё достаточно понятно, только не работает 🙂

    Опишу ситуацию. Роутер 2011UHs, в eth1 воткнут интернет с белым ip, в eth5 — билайн с L2TP.
    Когда в route list выбран 0.0.0.0/0 ether1 — всё работает норм, белый айпи пингуется. Но для основного режима необходим выход через eth5, и вот тогда начинаются проблемы — eth1 при этом перестаёт отвечать на пинги и что-либо ещё.
    Пытался выставить правило accept для eth1, пытался выставить fasttrack connection для всего порта, пытался пробросить порт — безрезультатно.
    В логах видны запросы из внешнего интернета к порту, но ответить он не желает.
    Куда рыть?

    Ответить
    1. GregoryGost автор

      Здравствуйте!
      Вы могли заметить, что статья написана на основе одного соединения от провайдера.
      В вашем случае необходимо смотреть в сторону MultiWAN и подобных решений.
      Рекомендую изучить Packet Flow и принцип разделения трафика с нескольких внешних соединений

  9. Александр Rama7th

    Gregory огромное спасибо, оч классно написано

    Но в связи всё же с непониманием философии FireWall и добавления правил,
    как мониторить и добавлять в правило новые устройства с новыми портами для их работы в внутри сети
    или как мониторить необходимое подключение из вне на новое внешний интерфейс Микроктика.
    Как мониторить подключение которое не попадает в созданное правило и отрабатывает, куда же оно тогда попало

    Есть Закладка Log — но она в динамике, кнопка freeze есть. но количество информации большое, а поиска или фильтра по правилам , ip и т.п. в этом окне нет.

    Как удобно работать логами?
    Спасибо

    Ответить
  10. Александр

    Здравствуйте, Григорий!
    При настройке удалённого доступа к видеорегистратору пришлось столкнуться с роутером MikroTik RB952Ui-5ac2ND-TC. Так проникся уважением к этому прибору, что и себе приобрёл. С помощью ваших рекомендаций настроил небольшую домашнюю сеть (спутниковый интернет, USB-модем, подключил Dreambox, лазерный принтер) и просто счастлив! После старенького D-Link это небо и земля! Огромное вам спасибо за опубликованные уроки!
    Но у меня возникла проблема. Работаю с файерволом Outpost Firewall Pro от умершей компании Agnitum. И отказываться от этой программы по весьма серьёзным причинам не собираюсь. Беда в том, что когда включён этот сетевой экран, программа Winbox не соединяется с Микротиком. Приходится отключать для настройки. Не всегда это удобно. Все мои усилия решить эту проблему не увенчались успехом. Поддержка, естественно, не работает. Если возможно, помогите, пожалуйста, настроить разрешительное правило для моего Outpost.
    Заранее благодарен!

    Ответить
    1. GregoryGost автор

      Здравствуйте,
      Большое спасибо за ваш отзыв! Приятно видеть, что мой опыт не пропадает зря =)

      Точно не подскажу т.к. никогда не пользовался сторонними Firewall и Outpost Firewall в частности, но могу подсказать куда копать.
      В Outpost Firewall Pro, как и любом другом визуальном Firewall есть пункты
      1. Настройки LAN
      2. Сетевые правила

      В первом вы можете назначить всю подсеть, как доверенную (если она таковой является). Либо указать конкретные IP и даже скорее всего порты.
      Во втором задавать отдельные правила обработки трафика. По типу «с какого IP» на «какой IP и порт».

      Посмотрите, возможно сможете подобрать для себя рабочий конфиг.

  11. Александр

    Спасибо Вам за проделанную работу, я так понимаю по этой схеме можно как то добавить аналогичные правила для отлавливания переборщиков паролей к RDP на определённом порту и кидать в блеклист. Если вам не трудно то подскажите как ето сделать правильно, и в какой последовательности разместить правило

    Ответить
    1. GregoryGost автор

      Здравствуйте. Благодарю за ваш комментарий!
      Держать RDP наружу просто так это конечно моветон. Но самую простую защиту можно обеспечить и так.

      Попробуйте такую конструкцию. Правила размещаете над блокирующими в конце. Заметьте что я привел пример с Filter, NAT и RAW таблицами для снижения нагрузки на CPU.

      # 3399 - port accessible from the internet (choose yourself)
      # 3389 - standard rdp port
      
      /ip firewall filter
      add action=add-src-to-address-list address-list=rdp-blacklist address-list-timeout=3d chain=forward connection-state=new dst-port=3389 in-interface-list=Internet protocol=tcp src-address-list=rdp-stage-10
      add action=add-src-to-address-list address-list=rdp-stage-10 address-list-timeout=10m chain=forward connection-state=new dst-port=3389 in-interface-list=Internet protocol=tcp src-address-list=rdp-stage-9
      add action=add-src-to-address-list address-list=rdp-stage-9 address-list-timeout=10m chain=forward connection-state=new dst-port=3389 in-interface-list=Internet protocol=tcp src-address-list=rdp-stage-8
      add action=add-src-to-address-list address-list=rdp-stage-8 address-list-timeout=10m chain=forward connection-state=new dst-port=3389 in-interface-list=Internet protocol=tcp src-address-list=rdp-stage-7
      add action=add-src-to-address-list address-list=rdp-stage-7 address-list-timeout=10m chain=forward connection-state=new dst-port=3389 in-interface-list=Internet protocol=tcp src-address-list=rdp-stage-6
      add action=add-src-to-address-list address-list=rdp-stage-6 address-list-timeout=10m chain=forward connection-state=new dst-port=3389 in-interface-list=Internet protocol=tcp src-address-list=rdp-stage-5
      add action=add-src-to-address-list address-list=rdp-stage-5 address-list-timeout=10m chain=forward connection-state=new dst-port=3389 in-interface-list=Internet protocol=tcp src-address-list=rdp-stage-4
      add action=add-src-to-address-list address-list=rdp-stage-4 address-list-timeout=10m chain=forward connection-state=new dst-port=3389 in-interface-list=Internet protocol=tcp src-address-list=rdp-stage-3
      add action=add-src-to-address-list address-list=rdp-stage-3 address-list-timeout=10m chain=forward connection-state=new dst-port=3389 in-interface-list=Internet protocol=tcp src-address-list=rdp-stage-2
      add action=add-src-to-address-list address-list=rdp-stage-2 address-list-timeout=10m chain=forward connection-state=new dst-port=3389 in-interface-list=Internet protocol=tcp src-address-list=rdp-stage-1
      add action=add-src-to-address-list address-list=rdp-stage-1 address-list-timeout=10m chain=forward connection-state=new dst-port=3389 in-interface-list=Internet protocol=tcp
      
      /ip firewall nat
      add action=dst-nat chain=dstnat comment="RDP" dst-port=3399 in-interface-list=Internet protocol=tcp to-addresses=192.168.88.88 to-ports=3389
      
      /ip firewall raw
      add action=drop chain=prerouting comment="RDP - Drop blacklist IP" in-interface-list=Internet src-address-list=rdp-blacklist
  12. Laikren

    Респект автору за такую содержательную статью

    Ответить
    1. GregoryGost автор

      Благодарю!

  13. Михаил

    Огромное спасибо за Ваши статьи! С микротиком только столкнулся, до этого в основном с циско работал, привык к определенному синтаксису. Непривычно.

    Ответить
    1. GregoryGost автор

      Здравствуйте,
      Спасибо за ваш отзыв!

  14. Юрий

    Григорий, доброго времени суток!
    Если есть возможность, расскажите пожалуйста, как настроить в RouterOS ntp client на сервере ntp поднятом на локальной машине в сети windows 7.
    Служба работает, соседние машины синхронизируются. Микротик отказывается.
    Сильно не пинайте, т.к только начинаю знакомиться с Микротиками.
    Для чего это все — закрытая технологическая сеть, связи с внешним миром нет и не будет.

    Ответить
    1. GregoryGost автор

      Юрий, приветствую!
      Можете уточнить, где настраивали NTP клиента на Микротике?

  15. Анатолий

    Спасибо вам, отличная статья!!
    Скажите пожалуйста, я правильно понимаю, что при удачной удалённой авторизации в винбокс, мой ip попадает в список на блокировку на минуту?

    Ответить
    1. GregoryGost автор

      Здравствуйте,
      Спасибо за отзыв!!

      Все верно, при успешной авторизации ваш IP просто попадет в это правило
      add action=add-src-to-address-list address-list="Winbox Stage 1" address-list-timeout=1m chain=input connection-state=new dst-port=8291 in-interface-list=Internet protocol=tcp

  16. RomaRio

    Подскажите, плз, как правильно настроить МикроТик, чтобы DLNA-сервер из одной подсети (например, 192.168.10.x) был виден в другой (192.168.20.х)?

    Подсети родственные, пинги проходят.

    Читал, что нужно использовать IGMP Proxy, но не могу разобраться — как именно. Вроде все сделал «по инструкции», но не работает 🙁

    Ответить
    1. Pavel

      Проблема в том что DNLA работает на втором уровне,сооствественно вам нужно соеденить две под сети в один бродкастный домен. Скажем повесить на один бридж сети

    2. GregoryGost автор

      DLNA насколько мне известно работает на Host Layer.
      4 Уровень модели OSI, он же транспортный т.е. HTTP, TCP запросы и др.
      Соответственно рассылка широковещательных пакетов, как multicast, а не broadcast.

    3. GregoryGost автор

      Здравствуйте,
      Подскажите по какой инструкции делали? (если речь о моей, то она основана только на одной подсети, а вы ведете речь про разные подсети)
      У меня DLNA работает т.к. IPv4 с маской /24 во всей локалке.

  17. Дмитрий

    Здравствуйте
    Я недавно изучаю настройку firewall, поэтому не сочтите мой вопрос глупым, просто хочу разобраться
    — В данном примере для цепочки input настроен закрытый firewall, в конце стоит правило которое запрещает все что не разрешено вышестоящими правилами?
    — А для цепочки forward настроен открытый firewall, разрешаем все кроме того что блокируется правилами, так как в конце нету блокирующего правила для цепочки forward, или оно и не нужно?

    Ответить
  18. RomaRio

    А можно последнюю версию для ленивых. У меня в блек листы не закидывает…

    Ответить
    1. GregoryGost автор

      Здравствуйте,
      Если не закидывает, значит Firewall настроен по другому. Проверяйте очередность правил

  19. Денис

    Добрый день, Григорий!

    Хочу поблагодарить за очень доходчивый туториал по настройке микротика.
    Все написано очень логично и интересно!!! Так держать!!!!
    Теперь я бы хотел задать вопрос, на который Вы возможно сможете ответить.
    Я настраивал firewall по вашей инструкции и все работает на ура, но есть ссылка на форум, который я могу открыть только через VPN или используя свой другой роутер.
    Ссылка производителя оборудования GTMEDIA для спутника https://www.freesat.cn/forum/
    Я думал что это изза проблемы с MTU и MSS, но нет…мои манипуляции не к чему не привели….может Вы сможете указать на причину ошибки открытии сайта?
    Заранее благодарю,
    Денис

    Ответить
    1. GregoryGost автор

      Денис, приветствую!

      Благодарю за отзыв! Очень приятно 🙂

      Все очень просто. Доменное имя никем не заблокировано, но вот если его «зарезолвить» т.е. определить его IP адрес и пробить его через «УНИВЕРСАЛЬНЫЙ СЕРВИС проверки ограничения доступа к сайтам и (или) страницам сайтов сети «Интернет»», то можно обнаружить следующее:
      1. Статья основания внесения в реестр — 15.4
      Реквизиты основания внесения в реестр (орган принявший решение, номер, дата) — Таганский районный суд г. Москвы 2-1779/2018 13.04.2018
      Ограничение доступа — ограничивается к ip
      2. Статья основания внесения в реестр — 15.3
      Реквизиты основания внесения в реестр (орган принявший решение, номер, дата) — Генпрокуратура 27-31-2018/Ид2971-18 16.04.2018
      Ограничение доступа — ограничивается к ip

      Потому единственным способом попадать на данный ресурс остается VPN ждать когда владельцы сайта примут меры для снятия ограничений

    2. Денис

      Спасибо за исчерпывающий ответ 🙂
      Интересно что МГТС этот ресурс блокирует, а мой 2-ой провайдер Sevensky, где стоит Асус, открывает без проблем. Как то выборочно каждый провайдер подходит к этому вопросу.

  20. Сергей

    Пока что лучшая настройка firewall из всех что я видел. Всё очень продумано, никаких лишних правил фильтра для проброса портов.
    Благодарю. Буду заглядывать, за новыми практиками.

    Еще бы найти бы такой же хороший шейпер трафика, но пока переделываю чьи то наработки под свой лад.

    Ответить
  21. Михаил

    Здравствуйте у меня микротик gr 750 замучали ддос атаками, процессор нагружается от37 до 70 процентов и по логу смотришь ip адрес один и тотже посылает по 50 — 100 тысяч пакетов. Подскажите что можно прописать от этого

    Ответить
    1. GregoryGost автор

      Здравствуйте,
      Тут конечно вопрос, как у вас настроен Firewall.

      Если интересуют правила для отлова и блокировки, то можете попробовать такой вариант:
      /ip firewall raw
      add action=drop chain=prerouting src-address-list=DDoS-Blacklist comment="DDoS - Drop IP from blacklist"
      /ip firewall filter
      add action=jump chain=forward connection-state=new in-interface-list=Internet jump-target=DDoS-Protect comment="DDoS - Main protection"
      add action=jump chain=input connection-state=new in-interface-list=Internet jump-target=DDoS-Protect
      add action=return chain=DDoS-Protect dst-limit=15,15,src-address/10s
      add action=add-src-to-address-list chain=DDoS-Protect address-list=DDoS-Blacklist address-list-timeout=1d

      Данный набор правил будет банить на сутки те IP, с которых идут попытки на открытие более 15 новых соединений в секунду.
      Хватит ли 15 это уже вам выбирать, подбирайте под себя исходя из загрузки и плотности атак на ваш IP.

      Ну и конечно нужно учитывать, что это ни в коем случае не понаценя.
      Крупные компании и провайдеры тратят миллионы на борьбу с DDoS и при этом это им не всегда помогает. Что уж говорить про обычный домашний роутер. (пусть даже мы не крупная компания)
      От «пионеров» может помочь )))

  22. ANT

    Добрый день, спасибо за подробную инструкцию. Вчера настроил свой hap ac2. Но через время, уже ночью, появились 2 правила в NAT, с прописанными даже комментариями. При этом пункт активно/не активно не доступен, можно только удалить. Удалил, захожу сегодня утром и вижу ту же историю.
    До начала настройки роутера, сброшены настройки, пользователя нового завел, права полные, пароль изменен и длинный, админа удалил. Filter Rules добавлял согласно инструкции, добавил только дополнительно пакет мультикаст для IP-TV. Что самое интересное этих новых добавленных правил в терминале не видно. Из сервисов оставил включенным только WinBox. От провайдера получаю динамический IP.

    /ip dns
    set allow-remote-requests=yes servers=...........15
    /ip firewall filter
    add action=accept chain=forward comment="1.1. Forward and Input Established and Related connections" connection-state=established,related
    add action=drop chain=forward connection-state=invalid
    add action=accept chain=input connection-state=established,related
    add action=drop chain=input connection-state=invalid
    add action=accept chain=input comment="Allow IGMP" in-interface=eth1-wan protocol=igmp
    add action=accept chain=input comment="IPTV UDP incoming" disabled=yes dst-port=1234 in-interface=eth1-wan protocol=udp
    add action=accept chain=forward comment="IPTV UDP forwarding" dst-port=1234 protocol=udp
    add action=drop chain=forward comment="_" connection-nat-state=dstnat connection-state=new in-interface-list=Internet
    add action=add-src-to-address-list address-list=ddos-blacklist address-list-timeout=1d chain=input comment=
    "1.2. DDoS Protect - Connection Limit" connection-limit=100,32 in-interface-list=Internet protocol=tcp
    add action=tarpit chain=input connection-limit=3,32 protocol=tcp src-address-list=ddos-blacklist
    add action=jump chain=forward comment="1.3. DDoS Protect - SYN Flood" connection-state=new jump-target=SYN-Protect protocol=tcp tcp-flags=syn
    add action=jump chain=input connection-state=new in-interface-list=Internet jump-target=SYN-Protect protocol=tcp tcp-flags=syn
    add action=return chain=SYN-Protect connection-state=new limit=200,5:packet protocol=tcp tcp-flags=syn
    add action=drop chain=SYN-Protect connection-state=new protocol=tcp tcp-flags=syn
    add action=drop chain=input comment="1.4. Protected - Ports Scanners" src-address-list="Port Scanners"
    add action=add-src-to-address-list address-list="Port Scanners" address-list-timeout=none-dynamic chain=input in-interface-list=Internet
    protocol=tcp psd=21,3s,3,1
    add action=drop chain=input comment="1.5. Protected - WinBox Access" src-address-list="Black List Winbox"
    add action=add-src-to-address-list address-list="Black List Winbox" address-list-timeout=none-dynamic chain=input connection-state=new
    dst-port=8291 in-interface-list=Internet log=yes log-prefix="BLACK WINBOX" protocol=tcp src-address-list="Winbox Stage 3"
    add action=add-src-to-address-list address-list="Winbox Stage 3" address-list-timeout=1m chain=input connection-state=new dst-port=8291
    in-interface-list=Internet protocol=tcp src-address-list="Winbox Stage 2"
    add action=add-src-to-address-list address-list="Winbox Stage 2" address-list-timeout=1m chain=input connection-state=new dst-port=8291
    in-interface-list=Internet protocol=tcp src-address-list="Winbox Stage 1"
    add action=add-src-to-address-list address-list="Winbox Stage 1" address-list-timeout=1m chain=input connection-state=new dst-port=8291
    in-interface-list=Internet protocol=tcp
    add action=accept chain=input dst-port=8291 in-interface-list=Internet protocol=tcp
    add action=accept chain=input comment="1.8. Access Normal Ping" in-interface-list=Internet limit=50/5s,2:packet protocol=icmp
    add action=drop chain=input comment="1.9. Drop All Other" in-interface-list=Internet
    /ip firewall mangle
    add action=mark-connection chain=prerouting connection-state=new dst-port=9999 new-connection-mark=allow_in protocol=tcp
    /ip firewall nat
    add action=masquerade chain=srcnat out-interface-list=Internet src-address=192.168.88.0/24
    add action=redirect chain=dstnat dst-port=9999 in-interface=eth1-wan protocol=tcp to-ports=80
    /ip firewall raw
    add action=drop chain=prerouting dst-port=137,138,139 in-interface-list=Internet protocol=udp
    /ip service
    set telnet disabled=yes
    set ftp disabled=yes
    set www disabled=yes
    set ssh disabled=yes
    set api disabled=yes
    set api-ssl disabled=yes
    /ip upnp
    set enabled=yes
    /ip upnp interfaces
    add interface=eth1-wan type=external
    add interface=br1-lan type=internal
    /routing igmp-proxy
    set quick-leave=yes
    /routing igmp-proxy interface
    add alternative-subnets=10.0.0.0/8 interface=eth1-wan upstream=yes
    add interface=br1-lan

    Стоит ли паниковать и что я не учел?

    Ответить
    1. ANT


      Вот эти 2 правила, не знаю как прикрепить сюда скрин

    2. GregoryGost автор

      Здравствуйте,

      Это динамически созданные правила службой Upnp в вашем ноутбуке.
      Возможно какаой-то сервис на вашем пк требует открытых портов и запрашивает их у роутра. Роутер в свою очередь их предоставляет.
      Это можно отключить через меню IP->UPnP — снять все галки и нажать ОК
      Или подать команду:
      /ip upnp set allow-disable-external-interface=no enabled=no show-dummy-rule=no

    3. ANT

      Спасибо за ответ. Т.е. он это показывает только для информации, что идет перенаправление пакетов через такие-то порты, поэтому и в терминале не выводится.
      А 3 правила в Filter Rules, которые отвечают за IP-TV, стоит вообще на первое место выносить?

    4. GregoryGost автор

      Это не для информации, это именно перенаправленые порты, но создаются роутером автоматически.
      В терминал ничего и не будет выводится. Может быть вы имели в виду лог, но в лог тоже т.к. это динамические правила и там не установлен Log Prefix и не включено логирование для этих правил, ну и самому это донастроить нельзя.

      У вас не так много правил, просто следуйте логике, forward обрабатывать в первую очередь, а уже потом input. Ну и established и related соединения тоже нужно приоритет повыше. А дальше уже согласно вашим знаниям и смелости )

  23. Сергей

    Еще такой вопрос:
    Настроена сеть между двумя офисами через PPTP, Всё пингуется всё хорошо работает. Но в arp таблице нет ничего кроме своей подсети. — это не сама проблема, но тоже странно.

    Сами проблемы:
    1) Имена устройств из сети другого офиса — мне недоступны, не могу подключится к ним по по имени.
    2) Крутил оба сервера ДНС, друг на друга их назначал. Но они как будто не дружат. Да и вообще ДНС почему то дружит только с интернетом, а локальные Ип адреса в днс не попадают. Почему?
    nslookup

    Микротик знает прекрасно имя этого сервера в сети.

    Пока что ничего не помогает. Может вы мне поможете советом.
    Помогите разобраться.

    ГлОфис, где PPTP сервер подключется к интернету через DynIP.
    Офис клиент через PPTP, доступ к интернету через LT2P.

    Ответить
    1. Сергей

      Еще после попыток получить у днса какие то адреса, в днс появляется запись:

      P.S. Взята ваша настройка Firewall, изменены только порты для VPN.

    2. GregoryGost автор

      Сергей,

      0. Пинги ходят, это здорово, но…
      По протоколу ARP компьютер А отправляет широковещательный запрос, адресованный всем компьютерам в одном с ним широковещательном домене.
      Поэтому нет ничего удивительного в том, что в другом роутере с другой подсетью вы не видите записей в ARP таблице, они просто ему не отправляются.

      1. и 2. Mikrotik хорош только, как ретранслятор DNS запросов.
      Подскажите, какой DNS сервис вы используете?
      У меня стоит Debian 9 с Bind9 и все отлично работает, но у меня опять таки одна подсеть для всей домашней сети ))

      Вообще тема DNS довольно интересная. Поищите, как правильно делать основные доменные зоны, инверсные доменные зоны, A записи, как их связывать с IP адресами.
      Также DHCP должны раздавать нужные DNS. Т.е. первым DNS в отдаче Network DHCP должен быть IP сервера DNS в локальной сети.

      На вашем изображении Микротик знает хостнейм, а это не одно и тоже, что и доменная зона!

  24. Сергей

    Gregory
    Спасибо за статью. У меня сразу возник вопрос по поводу сброса блек-листы, можно ли их очищать к примеру раз в 5 минут, как то опасно иметь блек-листы я могу и 5 и 10 раз ошибиться. А недавно. Использовал старую версию Винбокса, и после обновления прошивки на микротике не мог войти в него, достаточно долго.

    Добавьте в неё еще строку с ip firewall nat, а то народ мучается с отсутствием интернета в комментариях.

    Настройка фаервола на микротике очень сложная штука.
    — чем больше правил фаервола — тем лучше. (безопасность)
    — чем меньше правил фаервола — тем лучше. (скорость работы и меньше нагрузка на процессор)

    Поэтому захламление листа фаервола неизбежно приводит к замедлению работы всех пользователей в сети интернет. А если еще и начать шейпить интернет трафик, то беда.
    Конечно всё зависит от конкретно настраиваемого устройства.

    Дальше я веду к тому, что у нас по 4 правила на проверку спама. это в общей сложности 8 правил фаервола — что не очень хорошо, так как каждый переход на след правило — это потеря времени обработки пакета.

    И было бы очень хорошо, если бы вы привносили в статью новый опыт.

    Да вопрос:
    Как проверить, что роутер не вмешивается и не следит за пакетами передаваемыми внутри локально сети ? Есть какое то правило?

    Ответить
    1. GregoryGost автор

      Сергей, приветствую,

      1. Черный список может сам очищаться, достаточно навесить таймаут сгорания нахождения адреса в адрес листе.

      2. Благодарю за отзыв. Возможно не соглашусь с Вами в части того, что 4 правила на проверку спама это не много для домашнего использования со статическим IP.
      Нагрузка даже на 1 ядерный hAP ac совершенно не велика. Для блокировки DDoS применяются другие методики.

      3. Новый опыт это использование PortKnocking(скоро)

      4. Роутер вмешивается или следит за пакетами передаваемыми внутри локально сети? Забавно ))
      Ни разу не встречал такой интерпретации, но если хочется…
      Нет правила нет, но можно заняться исследованием. Вам придется установить два ПК подключенные через роутер и его внутренний сетевой мост.
      Далее устанавливаете Wireshark и отправляете пакет с одного ПК на другой. Получаете пакет и смотрите, были ли внесены изменения, соответствует ли он исходному.
      Вообще для MikroTik это сомнительно. Можно было бы побеспокоится об этом для каких-то китайских брендов да и то это связано больше с работой через китайские сервисы.

  25. Максим Кушнаренко

    Здравствуйте, уважаемый Gregory.
    Спасибо за проделанную работу и подробные разъяснения.
    У меня остались пара вопросов по файерволу.

    Первый. Нужно ли разрешать пинговать сам роутер и оборудование LAN?
    Тогда правила разрешения будут выглядеть так:
    /ip firewall filter
    add action=accept chain=input comment="Enable Ping the router (Accept ICMP\_Internet Control Message Protocol )" in-interface-list=WAN limit=50/5s,2:packet protocol=icmp
    add action=accept chain=forward comment="Enable Ping device behind the router" protocol=icmp

    или же стоит запретить ICMP ответы с WAN портов в цепочке INPUT и отключить MAC Ping
    /ip firewall address-list
    add address=192.168.88.0/24 list=AllowIPRemoteManagement
    /add action=drop chain=input comment="9.3 - Drop IN echo request" icmp-options=8:0 in-interface-list=WAN protocol=icmp src-address-list=!AllowIPRemoteManagement
    /tool mac-server ping set enabled=no

    И в каком месте файервола следует расположить данные правила?

    Вопрос второй.
    В файерволе «Из коробки» есть такие правила:
    /ip firewall filter
    add action=accept chain=forward comment="Accept in ipsec policy" ipsec-policy=in,ipsec
    add action=accept chain=forward comment="Accept out ipsec policy" ipsec-policy=out,ipsecicmp

    Какой смысл у этих правил? Разрешает прохождение IPSec для L2TP и VPN – тоннелей?
    Еще один вопрос по NAT. В файерволе «Из коробки» правило маскарадинга выглядит так:
    /ip firewall nat
    add action=masquerade chain=srcnat comment="defconf: masquerade" ipsec-policy=out,none out-interface-list=WAN

    Какой смысл параметра ipsec-policy=out,none

    Сочту за честь прочитать Ваши ответы

    Ответить
    1. GregoryGost автор

      Максим, здравствуйте,
      Благодарю за отзыв.

      Ответы по первому вопросу.
      Я уже давно пришел к тому, что нужно закрывать двери по максимому. Именно поэтому я реализовал для себя Portknocking.
      Если из простого, то для получения полноценного доступа, нужно правильно «постучаться» в роутер. Это избавляет от продумывания постоянных уловок для потенициальных попыток взлома.

      Из вашего
      Лучше так не делать: add action=accept chain=forward comment="Enable Ping device behind the router" protocol=icmp
      Ничего криминального если хотите чтобы ваш IP пинговался снаружи кем угодно: add action=accept chain=input comment="Enable Ping the router (Accept ICMP\_Internet Control Message Protocol )" in-interface-list=WAN limit=50/5s,2:packet protocol=icmp

      Про расположение правил я придерживаюсь логики:
      Сначала Forward — для более быстрой обработки уже установленных и проходящих соединений
      Потом Input, где правило drop на все, что не разрешено выше, находится в самом низу. (только список WAN! не нужно лочить абсолютно все)
      Соответственно разрешающие правила над блокирующим и дополнительные блокировки над разрешающими если требуются.

      Ответы по второму вопросу.
      ipsec-policy — соответствие политике, используемой IpSec. Направление используется для выбора соответствия политике, используемой для декапсуляции, или политики, которая будет использоваться для инкапсуляции.
      in — действует в цепочках PREROUTING, INPUT и FORWARD
      out — действует в цепях POSTROUTING, OUTPUT и FORWARD
      ipsec — соответствует, если пакет подвергается обработке IpSec
      none — соответствует пакету, который не подлежит обработке IpSec (например, транспортный пакет IpSec)
      add action=accept chain=forward comment="Accept in ipsec policy" ipsec-policy=in,ipsec согласно Wiki MikroTik: разрешает прохождение запросов ipsec политик через роутер в цепочке FORWARD, также работает в цепочках PREROUTING и INPUT
      add action=accept chain=forward comment="Accept out ipsec policy" ipsec-policy=out,ipsec согласно Wiki MikroTik: разрешает исходящие запросы ipsec политик проходящих через роутер в цепочке FORWARD, также работает в цепочках POSTROUTING и OUTPUT
      Например, если маршрутизатор получает инкапсулированный в ipsec пакет gre, тогда правило ipsec-policy=in,ipsec будет соответствовать пакету gre, при этом правило ipsec-policy=in,none будет соответствовать пакету esp

      В этом случае правило add action=masquerade chain=srcnat comment="defconf: masquerade" ipsec-policy=out,none out-interface-list=WAN означает, что маскарадинг будет применяться только для соединений в которых нет ipsec пакетов для обработки.

      Надеюсь я все правильно рассказал. Если что-то не корректно, прошу спецов меня поправить ))

  26. Руслан

    Григорий, добрый день! Очень помогли разобраться с фаерволом (спасибку скоромно уже выразил). А не могли бы подсказать, как правильно переделать правило блокировки Winbox? Чтобы не гонять ip по спискам, а сразу отправлять в бан? Спасибо заранее.

    Ответить
    1. GregoryGost автор

      Руслан здравствуйте,
      Во первых позвольте вас поблагодарить за поддержку. Все на месте )

      Ну и по теме.
      Тут нужно немного уточнить, что значит сразу отправлять в бан?
      Т.е. получается если вы сами несколько раз неправильно ввели пароль, то и сами себя отправите в бан сразу?
      Полагаю, что так лучше не делать.

      Основная причина создания так называемой «лестницы» из списков это именно отсутствие стандартного инструмента определения того, сколько раз с одного и того же IP было попыток входа и ввода пароля.
      Т.е. к сожалению нельзя обойтись одним магическим правилом, вернее можно, но это просто закрытие всего и вся ) И разрешение только конкретным адресам.

      Я у себя уже давно тестирую систему доступа через Port Knocking и она меня устраивает больше, чем любые другие варианты организации firewall.
      Уже есть черновик статьи.

  27. Глеб

    Добрый день!
    Больше спасибо за развернутое описание!
    Я не понял (и это не дает мне покоя) и не смог нагуглить дополнительную информацию по защите локальной сети от атак извне (Цитата: в общедоступной сети злоумышленник может создать простой маршрут, который говорит, что 192.168.88.0/24 находится за вашим общедоступным IP-адресом.
    Таким образом злоумышленник может атаковать ваши локальные сетевые устройства).
    Я это понимаю так — злоумышленник создает маршрут
    route add 192.168.88.1 192.168.88.0/24 (IP шлюза злоумышленника?)
    После чего этот самый злоумышленник сможет выполнить команду, например, nmap 192.168.88.1 и просканировать порты устройства за NAT? Мне казалось, это невозможено…
    Заранее спасибо за разъяснения.

    Ответить
    1. Me

      Поделюсь своим соображением по этому поводу, хоть я только учусь сетевым премудростям.

      Если злоумышленник знает ваш белый адрес, то он может на своей машине прописать маршрут до сети ..88.0/24 используя ваш белый как шлюз. Что-типа такого:
      route add 192.168.88.0/24 via *your.white.ip*

      А дальше пытаться создать соединение с распространенными сервисами, которые светятся открытыми портами в вашей домашней сети и имеют логины/пароли по умолчанию.

  28. Владислав

    Здравствуйте. Очень понравилась ваша статья. Нашел для себя достаточно интересные правила, как в статье, так и в комментариях под ней. У меня вопрос. Зачем данное правило?

    /ip firewall filter
    add action=accept chain=input comment=»Enable OpenVPN Tunnel» in-interface-list=VPN

    Если прямо перед ним в списке стоит:

    /ip firewall filter
    add action=accept chain=input dst-port=1194 in-interface-list=Internet protocol=tcp

    В данном случае, мы уже разрешили трафику бегать по порту OpenVPN, и во втором правиле, разрешающем трафик по списку интерфейсов VPN нет смысла. Поправьте, если я что то упускаю.

    Ответить
    1. GregoryGost автор

      Здравствуйте,
      Спасибо за Ваш отзыв!

      /ip firewall filter
      add action=accept chain=input comment=”Enable OpenVPN Tunnel” in-interface-list=VPN

      Данное правило работает, когда соединение уже установлено и интерфейс VPN активен. Когда удаленный клиент пытается пройти аутентификацию, он не попадает в это правило и интерфейс VPN в этот момент еще не активен.

      /ip firewall filter
      add action=accept chain=input dst-port=1194 in-interface-list=Internet protocol=tcp

      А это правило просто открывает порт 1194 для аутентификации OpenVPN клиентов.

  29. Иван

    Прочитав статью, так и не понял смысла (в тестовой среде не воспроизводится)
    add action=drop chain=forward connection-nat-state=!dstnat connection-state=new in-interface-list=WANs

    Если forward из WAN разрешен только для established,related.
    И пользователи ходят через правило:
    chain=forward action=accept connection-state=established,related log=no log-prefix=»»
    chain=forward action=accept src-address=192.168.88.0/24 in-interface-list=LAN out-interface-list=WAN log=no log-prefix=»»
    chain=forward action=drop log=no log-prefix=»»
    + в NAT:
    chain=srcnat action=masquerade out-interface-list=WAN log=no log-prefix=»»

    Ответить
  30. Sergiy

    К сожалению что не так, я так и не смог разобратся в чем причина, после установки вашей версии firewall интернет пропадает. Буду рад за любую помощь. Спасибо

    Ответить
  31. Sergiy

    Спасибо Большое за предложенную Вами конфигурацию Firewall. Есть небольшая проблема, при этой конфигурации не работает интернет. Ошибка Chrome — ERR_CONNECTION_TIMED_OUT

    В свою забыл клочить еще
    Защита локальной сети от атак из публичного интернета (несколько насов и пк)
    /ip firewall filter
    add action=drop chain=forward connection-nat-state=!dstnat connection-state=new in-interface-list=WANs

    и Защиту WinBox порта от перебора.
    /ip firewall filter
    add action=drop chain=input comment="1.5. Protected - WinBox Access" src-address-list="Black List Winbox"
    add action=add-src-to-address-list address-list="Black List Winbox" address-list-timeout=none-dynamic chain=input connection-state=new dst-port=8291 in-interface-list=WANs log=yes log-prefix="BLACK WINBOX" protocol=tcp src-address-list="Winbox Stage 3"
    add action=add-src-to-address-list address-list="Winbox Stage 3" address-list-timeout=1m chain=input connection-state=new dst-port=8291 in-interface-list=WANs protocol=tcp src-address-list="Winbox Stage 2"
    add action=add-src-to-address-list address-list="Winbox Stage 2" address-list-timeout=1m chain=input connection-state=new dst-port=8291 in-interface-list=WANs protocol=tcp src-address-list="Winbox Stage 1"
    add action=add-src-to-address-list address-list="Winbox Stage 1" address-list-timeout=1m chain=input connection-state=new dst-port=8291 in-interface-list=WANs protocol=tcp
    add action=accept chain=input dst-port=8291 in-interface-list=WANs protocol=tcp

    В какой последовательности их нужно добавить в предложенную Вами конфигурацию?

    Переход на Port Knocking это будет следующий шаг! 🙂
    Спасибо

    /ip firewall filter
    # FORWARD FIRST
    add chain=forward action=accept connection-state=established,related comment="1.1. Forward Established and Related connections"
    add chain=forward action=drop connection-state=invalid
    add chain=forward action=jump connection-state=new jump-target=SYN-Protect protocol=tcp tcp-flags=syn comment="1.2. DDoS Protect - SYN Flood"
    # INPUT SECOND
    add chain=input action=jump connection-state=new jump-target=SYN-Protect protocol=tcp tcp-flags=syn in-interface-list=WANs
    add chain=input action=accept connection-state=established,related comment="1.3. Input Established and Related connections"
    add chain=input action=drop connection-state=invalid
    add chain=SYN-Protect action=drop connection-state=new protocol=tcp tcp-flags=syn comment="1.4. SYN-Protect chain"
    add chain=SYN-Protect action=return connection-state=new limit=200,5:packet protocol=tcp tcp-flags=syn
    add chain=input action=tarpit connection-limit=3,32 protocol=tcp src-address-list=ddos-blacklist comment="1.5. DDoS Protect - Connection Limit"
    add chain=input action=add-src-to-address-list address-list=ddos-blacklist address-list-timeout=1d connection-limit=100,32 in-interface-list=WANs protocol=tcp
    add chain=input action=drop src-address-list="Port Scanners" comment="1.6. Protected - Ports Scanners"
    add chain=input action=add-src-to-address-list address-list="Port Scanners" address-list-timeout=none-dynamic in-interface-list=WANs protocol=tcp psd=21,3s,3,1
    add chain=input action=accept protocol=icmp icmp-options=0:0 in-interface-list=WANs comment="1.7. Access Normal Ping"
    add chain=input action=accept protocol=icmp icmp-options=8:0 in-interface-list=WANs
    add chain=input action=accept protocol=icmp icmp-options=11:0 in-interface-list=WANs
    add chain=input action=accept protocol=icmp icmp-options=3:3 in-interface-list=WANs
    add chain=input action=accept protocol=icmp icmp-options=3:4 in-interface-list=WANs
    add chain=input action=accept protocol=icmp limit=2,2:packet in-interface-list=WANs
    # INPUT DROP OTHER ALL ON WAN'S
    add chain=input action=drop in-interface-list=WANs comment="99. Input Drop other All on WANs"

    Ответить
    1. GregoryGost автор

      Вот в такой последовательности
      /ip firewall filter
      # FORWARD FIRST
      add chain=forward action=accept connection-state=established,related comment=”1.1. Forward Established and Related connections”
      add chain=forward action=drop connection-state=invalid
      add chain=forward action=jump connection-state=new jump-target=SYN-Protect protocol=tcp tcp-flags=syn comment=”1.2. DDoS Protect – SYN Flood”
      add chain=forward action=drop connection-state=new connection-nat-state=!dstnat in-interface-list=WANs comment=”1.3. DST-NAT Protect”
      # INPUT SECOND
      add chain=input action=jump connection-state=new jump-target=SYN-Protect protocol=tcp tcp-flags=syn in-interface-list=WANs
      add chain=input action=accept connection-state=established,related comment=”1.4. Input Established and Related connections”
      add chain=input action=drop connection-state=invalid
      add chain=SYN-Protect action=drop connection-state=new protocol=tcp tcp-flags=syn comment=”1.5. SYN-Protect chain”
      add chain=SYN-Protect action=return connection-state=new limit=200,5:packet protocol=tcp tcp-flags=syn
      add chain=input action=tarpit connection-limit=3,32 protocol=tcp src-address-list=ddos-blacklist comment=”1.6. DDoS Protect – Connection Limit”
      add chain=input action=add-src-to-address-list address-list=ddos-blacklist address-list-timeout=1d connection-limit=100,32 in-interface-list=WANs protocol=tcp
      add chain=input action=drop src-address-list=”Port Scanners” comment=”1.7. Protected – Ports Scanners”
      add chain=input action=add-src-to-address-list address-list=”Port Scanners” address-list-timeout=none-dynamic in-interface-list=WANs protocol=tcp psd=21,3s,3,1
      add chain=input action=accept protocol=icmp icmp-options=0:0 in-interface-list=WANs comment=”1.8. Access Normal Ping”
      add chain=input action=accept protocol=icmp icmp-options=8:0 in-interface-list=WANs
      add chain=input action=accept protocol=icmp icmp-options=11:0 in-interface-list=WANs
      add chain=input action=accept protocol=icmp icmp-options=3:3 in-interface-list=WANs
      add chain=input action=accept protocol=icmp icmp-options=3:4 in-interface-list=WANs
      add chain=input action=accept protocol=icmp limit=2,2:packet in-interface-list=WANs
      add chain=input action=drop src-address-list=”Black List Winbox” comment=”1.9. Protected – WinBox Access”
      add chain=input action=add-src-to-address-list address-list=”Black List Winbox” address-list-timeout=none-dynamic connection-state=new dst-port=8291 in-interface-list=WANs log=yes log-prefix=”BLACK WINBOX” protocol=tcp src-address-list=”Winbox Stage 3″
      add chain=input action=add-src-to-address-list address-list=”Winbox Stage 3″ address-list-timeout=1m connection-state=new dst-port=8291 in-interface-list=WANs protocol=tcp src-address-list=”Winbox Stage 2″
      add chain=input action=add-src-to-address-list address-list=”Winbox Stage 2″ address-list-timeout=1m connection-state=new dst-port=8291 in-interface-list=WANs protocol=tcp src-address-list=”Winbox Stage 1″
      add chain=input action=add-src-to-address-list address-list=”Winbox Stage 1″ address-list-timeout=1m connection-state=new dst-port=8291 in-interface-list=WANs protocol=tcp
      add chain=input action=accept dst-port=8291 in-interface-list=WANs protocol=tcp
      # INPUT DROP OTHER ALL ON WAN’S
      add chain=input action=drop in-interface-list=WANs comment=”99. Input Drop other All on WANs”

  32. Сергей

    Добрый день!
    Спасибо за схему, работает, атак стало значительно меньше!
    Но почему то мои же VPN-клиенты периодически попадают в черный список.
    Подскажите пожалуйста как можно немного снизить(повысить) порог отправки в блэк-лист правило 1.6

    Ответить
    1. GregoryGost автор

      Здравствуйте,
      Рад, что Вы двигаетесь к успешной реализации ))
      Снизить порог можно увеличив кол-во шагов с 3 до 5 например или более, до момента когда клиенты перестанут попадать в Блэклист.

      На практике проверено, что OpenVPN отрабатывает достаточно стабильно т.к. создает подключение реже, чем тот же PPTP или L2TP
      Чем соединение чаще генерирует новые подключения, тем у него больше шанс попасть в Блэклист.
      В целом, если это Ваш клиент и он корректно подключается, то активация соединения должна проходить сразу (Т.е. максимум это присутствие IP адреса в первых двух шагах) и далее успешное соединение переходит в постоянное состояние Established и эти правила уже не применяются.

  33. Sergiy

    Добрый день, спасибо за Вашу работу и детальное описание, очень помогает для начинающих юзеров.
    Прочитав вашу статью у меня, получился вот такой firewall. Посмотрите пожалуйста все ли правильно (последовательность правил и их действий)
    Спасибо

    /ip firewall filter
    add action=drop chain=input comment="Drop access to DNS from WAN" dst-port=53 \
    in-interface-list=WANs protocol=tcp
    add action=drop chain=input dst-port=53 in-interface-list=WANs protocol=udp
    add action=accept chain=forward comment=\
    "1.1. Forward and Input Established and Related connections" \
    connection-state=established,related
    add action=drop chain=forward comment="defconf: drop invalid" \
    connection-state=invalid
    add action=accept chain=input comment="defconf: accept established,related" \
    connection-state=established,related
    add action=drop chain=input connection-state=invalid
    add action=add-src-to-address-list address-list=ddos-blacklist \
    address-list-timeout=1d chain=input comment=\
    "1.2. DDoS Protect - Connection Limit" connection-limit=100,32 \
    in-interface-list=WANs protocol=tcp
    add action=tarpit chain=input connection-limit=3,32 protocol=tcp \
    src-address-list=ddos-blacklist
    add action=jump chain=forward comment="1.3. DDoS Protect - SYN Flood" \
    connection-state=new jump-target=SYN-Protect protocol=tcp tcp-flags=syn
    add action=jump chain=input connection-state=new in-interface-list=WANs \
    jump-target=SYN-Protect protocol=tcp tcp-flags=syn
    add action=return chain=SYN-Protect connection-state=new limit=200,5:packet \
    protocol=tcp tcp-flags=syn
    add action=drop chain=SYN-Protect connection-state=new protocol=tcp \
    tcp-flags=syn
    add action=drop chain=input comment="1.4. Protected - Ports Scanners" \
    src-address-list="Port Scanners"
    add action=add-src-to-address-list address-list="Port Scanners" \
    address-list-timeout=none-dynamic chain=input in-interface-list=WANs \
    protocol=tcp psd=21,3s,3,1
    add action=accept chain=input comment="1.8. Access Normal Ping" \
    in-interface-list=WANs limit=50/5s,2:packet protocol=icmp
    add action=drop chain=forward comment=\
    "defconf: drop all from WAN not DSTNATed" connection-nat-state=!dstnat \
    connection-state=new in-interface-list=WANs
    add action=drop chain=input comment="defconf: drop all from WAN" \
    in-interface-list=WANs
    add action=drop chain=input comment=Bogon_Wan_Drop in-interface-list=WANs \
    src-address-list=BOGONS

    Ответить
    1. GregoryGost автор

      Здравствуйте,
      Вообще правила Firewall это очень индивидуальный инструмент. Набор правил очень часто отличается у каждого отдельного пользователя.
      В принципе составил из Ваших правил набор более корректный:
      /ip firewall filter
      # FORWARD FIRST
      add chain=forward action=accept connection-state=established,related comment="1.1. Forward Established and Related connections"
      add chain=forward action=drop connection-state=invalid
      add chain=forward action=jump connection-state=new jump-target=SYN-Protect protocol=tcp tcp-flags=syn comment="1.2. DDoS Protect - SYN Flood"
      # INPUT SECOND
      add chain=input action=jump connection-state=new jump-target=SYN-Protect protocol=tcp tcp-flags=syn in-interface-list=WANs
      add chain=input action=accept connection-state=established,related comment="1.3. Input Established and Related connections"
      add chain=input action=drop connection-state=invalid
      add chain=SYN-Protect action=drop connection-state=new protocol=tcp tcp-flags=syn comment="1.4. SYN-Protect chain"
      add chain=SYN-Protect action=return connection-state=new limit=200,5:packet protocol=tcp tcp-flags=syn
      add chain=input action=tarpit connection-limit=3,32 protocol=tcp src-address-list=ddos-blacklist comment="1.5. DDoS Protect - Connection Limit"
      add chain=input action=add-src-to-address-list address-list=ddos-blacklist address-list-timeout=1d connection-limit=100,32 in-interface-list=WANs protocol=tcp
      add chain=input action=drop src-address-list="Port Scanners" comment="1.6. Protected - Ports Scanners"
      add chain=input action=add-src-to-address-list address-list="Port Scanners" address-list-timeout=none-dynamic in-interface-list=WANs protocol=tcp psd=21,3s,3,1
      add chain=input action=accept protocol=icmp icmp-options=0:0 in-interface-list=WANs comment="1.7. Access Normal Ping"
      add chain=input action=accept protocol=icmp icmp-options=8:0 in-interface-list=WANs
      add chain=input action=accept protocol=icmp icmp-options=11:0 in-interface-list=WANs
      add chain=input action=accept protocol=icmp icmp-options=3:3 in-interface-list=WANs
      add chain=input action=accept protocol=icmp icmp-options=3:4 in-interface-list=WANs
      add chain=input action=accept protocol=icmp limit=2,2:packet in-interface-list=WANs
      # INPUT DROP OTHER ALL ON WAN'S
      add chain=input action=drop in-interface-list=WANs comment="99. Input Drop other All on WANs"

      Разрешающие правила добавлять в секцию # INPUT SECOND сразу после правил для Ping(ICMP)
      BOGON праила Вам не нужны т.к. последнее правило будет блокировать все, что не разрешено на WAN интерфейсах.
      Дальнейшая доработка правил уже будет зависеть только от Вас, что разрешать и в каком виде.

      Я уже перешел на Port Knocking полностью ))

  34. Сергей

    Правило защиты от ping flood из пункта 1.8 не имеет смысла т.к. первый же прилетевший пинг создаст новое подключение в коннекшн трекере и все последующие пинги с этого адреса полетят через правило «Established and Related» в любом количестве.
    Ну и если быть совсем занудой, то описание «Access Normal Ping» тоже не верно, т.к. правило открывает не только эхо запросы, а весь ICMP трафик. Что бы открыть только запросы надо использовать флаг icmp-options=8:0.

    Ответить
    1. GregoryGost автор

      Хм, мне почему-то всегда казалось, что первый прилетевший PING сначала не будет иметь в коннекшн трекере состояния Established, а сначала пройдет через цепочку Input Правил и уже после проверки получит это состояние.

      Давайте вместе попробуем собрать корректный набор правил для проверки Ping запросов и определим их последовательность.
      У меня получилось набросать такой набор правил:
      /ip firewall filter
      add chain=input action=accept protocol=icmp icmp-options=0:0 in-interface-list=Internet comment="Access Normal Ping"
      add chain=input action=accept protocol=icmp icmp-options=8:0 in-interface-list=Internet
      add chain=input action=accept protocol=icmp icmp-options=11:0 in-interface-list=Internet
      add chain=input action=accept protocol=icmp icmp-options=3:3 in-interface-list=Internet
      add chain=input action=accept protocol=icmp icmp-options=3:4 in-interface-list=Internet
      add chain=input action=accept protocol=icmp limit=2,2:packet in-interface-list=Internet
      add chain=input action=drop in-interface-list=WAN comment="Input Drop other All on WANs"

      Коды:
      0:0 — Echo reply (for ping)
      8:0 — Echo request (for ping)
      11:0 — TTL expired in transit (for traceroute)
      3:3 — Destination port unreachable (for traceroute)
      3:4 — Fragmentation required, and DF flag set (for path MTU discovery)

      Я полагаю, что они должны быть ниже чем правило:
      /ip firewall filter
      add chain=input action=accept connection-state=established,related comment="Input Established and Related connections"

  35. Дмитрий

    И снова здравствуйте 🙂
    Вернулся сюда еще раз чтобы рассказать о данной конфигурации, она замечательная, спасибо еще раз.
    Но как всегда есть «но».
    Так вот, все завелось замечательно и работало, до тех пор пока я не поменял свой входящий канал с 100 на 1000.
    Bот тут-то и начались танцы с бубном, потому что за роутером скорость на ethernet интерфейсах была 280Мbps,
    по 5GHz only AC wifi была 160Мbps, а кабель на входе без роутера отдавал 400.
    Танцы с бубном и посиделки на форумах с бородатыми дядьками в больших диоптриях продолжались неделю 🙂
    Результат был таки найден:
    /interface bridge set bridge protocol-mode=none
    /ip firewall filter add chain=forward action=fasttrack-connection connection-state=established,related

    (добавить перед правилом 1.1 !)
    И чудо! скорость вернулась в норму на всех интерфейсах.
    Теперь я даже знаю почему 🙂

    Буду рад если это кому-то поможет.

    Ответить
  36. Maks

    В правилах 1.2,1.4,1.5 и 1.6 — когда сработает правило, указанный address list сам появится и туда будет помещен «нарушитель», или нам предварительно необходимо создать нужный address list?

    Ответить
    1. GregoryGost автор

      сам появится и туда будет помещен “нарушитель”

  37. Николай

    всё спасибо, разобрался. Создал разрешающее правило для 1723 порта и всё заработало для sn.mynetname.net.
    Уточняющий вопрос: как я понял правило 1.6 не актуально, его можно закрестить?
    правило 1.5 — доступ к WinBox с определённого IP после 5 попыток блокируется навсегда?

    Ответить
    1. GregoryGost автор

      Правило 1.6 актуально для различных портов. Т.к у меня использцется OpenVPN, а у Вас PPTP или L2TP, то логично, что можно просто поменять номер TCP порта для этого правила.

      Правило 1.5, ограничение по времени можно настроить. В конкретном случае IP адрес отправляется на всегда.

  38. Николай

    Хорошее описание, разъяснения. Спасибо.
    В Часть 6 – Firewall защита доступа. В консольном вводе пропущено правило 3.
    Сделал по скриншотам. С копировал почти полностью, всё работает. НО у меня, ПОКА, VPN реализован через sn.mynetname.net , когда получу статический IP попробую по Вашей инструкции настроить OpenVPN, но пока имею, что имею. И последнее запрещающее правило, как и должно вероятно быть, блокирует VPN подключение через sn.mynetname.net. Должно быть разрешающее правило именно для него, стоящее ранее, не поможете его сформулировать?

    Ответить
    1. GregoryGost автор

      Здравствуйте,
      Немного непонятно про какое правило 3 идет речь.

  39. Dimon200

    Доброго вечерочка всем..
    Скипт очень понравился по правилам, и не много заточив под себя получилось вот так:

    Ответить
    1. GregoryGost автор

      Вы наверно забыли написать то, что получилось )))

  40. Stanislav

    Добрый день.
    А как защитить сеть есть микротик настроен с двумя провайдерами(Резервирование каналов) и с несколько внешних ip адресами .
    Суть вопроса такая.
    Я настроил резервирование каналов.У меня есть несколько внешних ip адресов и надо некоторые отдать напрямую в определенный порт.
    В поиску гугла я нашел способ bridge .Все настроил и все ок.
    НО подойдет ли такая защита если микротик в роли bridge.Установил галку User IP Firewall .
    И теперь сегмент моей сети я так понимаю доступен из вне.Может я ошибаюсь ,можете меня ругать =)
    Как защитить микротик так что бы спать спокойно .
    Спасибо за статью очень все доходчиво и понятно .=)

    Ответить
    1. GregoryGost автор

      Здравствуйте,
      Спасибо за отзыв! Всегда приятно видеть обратную связь от читателей.

      Если Вы внимательно читали цикл статей, то должны были увидеть, что сетевой порт, к которому подключен кабель провайдера, выделяется в отдельный интерфейс и не находится в Bridge.
      Bridge должен объединять только локальные порты — Это те порты, которые идут к Вашим домашним/офисным устройствам.
      Вообще это базовые сетевые знания, без них нужно будет подучить эти вопросы и желательно основательно, если собираетесь и дальше работать с MikroTik!

      Отвечая на Ваш вопрос: Нет, такая «защита» не подойдет просто потому, что это не защита )
      Защитой является Firewall.
      Прочитайте цикл статей еще раз. Отделите локальные интерфейсы(LAN) от внешних(WAN)
      Внесите эти интерфейсы в сетевые списки MikroTik RouterOS – Списки интерфейсов “Interface List”
      И уже после этого настраивайте защиту через Firewall (его я тоже советую изучить основательно)

      И только после этого будете спать спокойно.

  41. Дмитрий

    Спасибо за статью, очень доходчивая и главное полезная.
    Хотелось бы только добавить два пункта:
    — Вы в настройках файервола указываете входящий интерфейс internet, который не описан.
    Понятно что это ВАН, но Вы не указали что его нужно создать как новый элемент в закладке «Interface List»
    — WiFi интерфейсы по уволчанию выключены, их надо при переименовании включать.
    Спасибо еще раз за статью.

    Ответить
    1. GregoryGost автор

      Здравствуйте,
      Спасибо за Ваш отзыв, очень приятно!

      Добавил заметки по Вашим рекомендациям в эту статью и в статью Создание домашней сети на базе устройств MikroTik: Часть 2 – Настройка hAP ac
      Улучшаем статью совместно )

  42. zzel

    Доброго времени суток! Подскажите пожалуйста как делать поиск правила по комментарию, и если оно есть то ничего не делать? Спасибо.

    Ответить
    1. GregoryGost автор

      Здравствуйте,
      В принципе ничего сложного, можете проверить в терминале. Выдает строку с элементами правила, либо фразу «no such item»
      [cc]:put [/ip firewall filter get [find comment=»This is my comment»]][/cc]
      [cc]:put [/ip firewall filter get [find comment=»This is my com»]][/cc]

      Для применения в скриптах :put не нужен. Например для присвоения результата переменной достаточно просто присвоить
      [cc]:global SEARCH [/ip firewall filter get [find comment=»This is my comment»]][/cc]

      Есть вариант изящнее. Отдает 1 или 0 в результате
      [cc]/ip firewall filter print count-only where comment=»This is my comment»[/cc]
      [cc]/ip firewall filter print count-only where comment=»This is my com»[/cc]
      [cc]:global SEARCH [/ip firewall filter print count-only where comment=»This is my comment»][/cc]

      А далее уже сами решите, что с этим делать

  43. Игорь

    У меня очень похоже настроено, тоже заюзал интерфейс лист так как имею несколько WAN интерфейсов

    Ответить
    1. GregoryGost автор

      Здравствуйте,
      Вы молодец. Очень приятно видеть читателей, которые стараются изучить данную тематику )
      Так держать!

    2. Игорь

      Выкинул в помойку это полотно правил и настроил так:

      изображение
      https://d.radikal.ru/d21/1908/d5/cc2a3ea49bae.png

    3. GregoryGost автор

      Игорь, приветствую,
      У вас вполне обычный «нормально закрытый Firewall»
      В данной статье же рассматривается немного другой тип, часть запросов открыта для публики, т.е. что-то среднее.
      Ну и данная статья относится к циклу статей, а не просто руководство, как нужно делать правильно… ни в коем случае, нет.
      Надеюсь данная статья не ввела вас в заблуждение

    4. Игорь

      У меня тоже часть открыта, например VPN доступен с адрес листа где прописаны подсети двух опсосов которыми пользуюсь.
      Я понял что это длинное полотно правил совсем не нужно, когда можно все порты одним правилом закрыть вместе с пингом. Нет пинга — значит на ip адресе никого нет, значит можно не сканировать, а то что нужно — открываем выше и строго по адрес листам.

    5. GregoryGost автор

      Плавно переходим к Port Knocking 🙂

  44. Андрей

    8. Блокируем все остальные соединения, кроме, как из Локальной сети.
    И блокируем все остальное, что не разрешено правилами выше!

    После добавления этого правила у меня пропадает доступ к локалке удаленного роутера. ( Настройка по Вашим статьям оба роутера hAP ac, и мелкие вариации в соответствии с задачами) Подскажите плз. куда копать?
    К сожалению редко читаю, поэтому с MTU разбирался сам, а мог сэкономить время. =)

    Ответить
    1. GregoryGost автор

      Здравствуйте,
      Настройки аналогичны статье? Какие дополнительные параметры настроили?
      Попробуйте применить правило drop только на WAN интерфейс вместо LAN-Bridge и без исключающего флага [!]
      add action=drop chain=input comment="Rules 1.8" in-interface=WAN

  45. Alex

    Добрый день.
    «…В частности осветить такую хорошую штуку, как Fasttrack Connection…»
    Когда планируете осветить штуку Fasttrack Connection?хотелось бы прочитать.

    Ответить
    1. GregoryGost автор

      Здравствуйте,
      Очень надеюсь, что в ближайшее время, как только разберусь со временем.
      Как-то его очень мало на блог остается. Много статей ожидают своей финализации )

      Благодарю за проявленный интерес =)

  46. Maxim

    Отличнейшая статья! Всё доходчиво и четко пояснено. Ждем обновленную статью!
    Спасибо!

    Ответить
    1. GregoryGost автор

      Благодарю =)

  47. Mikhail

    Добрый день!
    Статья описывает можно сказать «типовой набор правил» с которыми хоть как-то на первое время можно позакрывать дырки в своем микротике от просто любопытных))
    Я бы еще добавить некоторую защиту от немаршрутизируемых сетей (ну так на всякий ..):

    /ip firewall address-list
    add address=0.0.0.0/8 list=BOGON
    add address=10.0.0.0/8 list=BOGON
    add address=100.64.0.0/10 list=BOGON
    add address=127.0.0.0/8 list=BOGON
    add address=169.254.0.0/16 list=BOGON
    add address=172.16.0.0/12 list=BOGON
    add address=192.0.0.0/24 list=BOGON
    add address=192.0.2.0/24 list=BOGON
    add address=192.168.0.0/16 list=BOGON
    add address=198.18.0.0/15 list=BOGON
    add address=198.51.100.0/24 list=BOGON
    add address=203.0.113.0/24 list=BOGON
    add address=224.0.0.0/4 list=BOGON
    add address=240.0.0.0/4 list=BOGON

    И правило для их блокировки:
    /ip firewall filter
    add action=drop chain=input comment=Bogon_Drop in-interface=\
    "Ваш WAN интерфейс" src-address-list=BOGON

    Необходимо ВСЕ правила, связанные с отловом жульманов из вне, навешивать именно на ВХОДЯЩИЙ интерфейс от провайдера или любого другого источника интернета.
    Если вы все сделали правильно, то у вас в окошке IP->Firewall->Address List помимо списков появится огромный список жульманов с перечнем IP адресов и временем их блокировки и с пометкой Port_Scaner

    Ответить
    1. GregoryGost автор

      Здравствуйте,
      Спасибо за небольшое дополнение )))
      Уверен читателям будет это полезно. Вкратце объясню, что такое BOGON Networks:
      Bogon — IP-адреса, которые не должны встречаться в таблицах маршрутизации в Интернет.
      Этим термином описываются зарезервированные диапазоны адресов, которые не должны использоваться, группы адресов, которые не выделены официально, а также приватный диапазон адресов.

      Суть добавления этих адресов и блокировка их на внешнем интерфейсе в том, что это поможет от атак с подменой адресов.
      НО! Если Ваш роутер стоит за другим маршрутизатором(соседа, или провайдер использует такие), то эти правила использовать не рекомендуется.

    2. lopar

      В условно-закрытом файрволле данные правила не имеют смысла, так как завершающее правило:
      add action=drop chain=input comment=»1.9. Drop All Other» in-interface-list=Internet

      порежет и эти сети тоже.

  48. Ruslan

    Здравствуйте, благодарю за хорошие статьи по микротикам. Если говорить о данной статье, есть замечание по поводу правила файрвола 1.6. Роутеру вы разрешили обрабатывать днс-запросы от локальных пользователей командой Allow Remote Requests. Исходящие запросы от вас, через wan-интерфейс, на DNS провайдера уйдут от вас и так, а возвратятся по правилу связанного соединения. Поэтому в этом правиле нет необходимости.

    Ответить
    1. GregoryGost автор

      Здравствуйте,
      Благодарю за отзыв =)
      Вы все верно подметили. Все именно так.
      Уже прошло достаточно много времени с написания статьи и некоторые правила я уже пересмотрел. На самом деле эту статью необходимо несколько переписать.
      В частности осветить такую хорошую штуку, как Fasttrack Connection.
      Как только у меня появится на это время я обязательно обновлю статью.

      Что касается правила 1.6 то лично у меня его уже давно нет. Блокировку флуда на 53 порт закрывает правило DROP в самом конце на INPUT WAN, а соединения из локальной сети, как Вы и сказали, проходят согласно базовому принципу работы связанных соединений.

  49. Вячеслав

    Плоховато реализована последовательность действий с их пояснением, сначала использовалась стрелочка где нажимать «ок» потом и она пропала. Как для начинающего осваивать ось микротика тяжеловато сходу понимать где переход по вкладке, а где новое правило, сейчас я веду речь о настройке фаервола, например ещё, написано «Я специально не буду добавлять скриншоты из закладки Gereal т.к. они все выглядят одинаково (указывается только Input)» только вот если не выбрать протокол tcp то строка tcp flags вообще не будет активна… Хотелось бы статью где не надо ломать голову над тем, что автор хотел сказать, а просто повторять действия.

    Ответить
    1. GregoryGost автор

      Здравствуйте,
      Спасибо за конструктивную критику.
      Постараюсь доработать статью, чтобы новичкам было проще влиться в процесс настройки.
      Старался сделать компактней )))

  50. Роман

    У меня одина железка на ADSL, значит надо вместо WAN везде в правилах его подставлять?

    Ответить
    1. GregoryGost автор

      Здравствуйте Роман,
      Не совсем понимаю причем тут ADSL и и правила MikroTik.
      Уточните топологию вашей сети. Что к чему подключено и что хотите получить?

    2. GregoryGost автор

      В этом случае она должна подключаться к mikrotik либо как wan порт, либо можно сделать из mikrotik сетевой мост. В обоих случаях firewall придется использовать в ADSL железке и возможности mikrotik не удастся применить для фильтрации трафика.

    3. Роман

      один из микротиков поднимает PPPOE через модем ADSL в бридже.
      во всех правилах на нем вместо WAN логично подставить PPPOE?
      все настроил и вроде работает, но правило 1.6 и 1.7 разрешение 1194 почему то не срабатывают — нулевые.

    4. GregoryGost автор

      Все верно, в Вашем случае PPPOE будет вместо WAN.
      В принципе можете просто переименовать PPPOE соединение в WAN
      Правило с портом 1194 это входящий порт для OpenVPN. Если Вы его не используете, то можете удалить эти правила.
      Все написано в рамках статей, а в них мы используем OpenVPN туннелирование.

    5. Роман

      Я настроил все в точности как у Вас. До этого перепробовал несколько подобных решений но они не работали должным образом. Может сразу файлы с бекапом выкладыаать для совсем ленивых )) и вот почему эти правила не работают? Где я мог ошибиться? Пересмотрел и сравнил 2-3 раза (

    6. GregoryGost автор

      Файлы с бекапами выкладывать нельзя. Они достаточно специфичны. При восстановлении на другой версии прошивки можно получить некоторый геморрой.
      К тому же я стремлюсь к тому, чтобы читатели искали решение и вникали в него, а не бездумно копипастили правила!!!

      Как Вы определили, что правила не работают?
      Чтобы понять где Вы ошиблись мне нужно увидеть что у Вас есть. Сделайте файл supout.rif и дайте ссылку на файл(например в Гугл или Яндекс диске, дропбоксе и т.д)