Сравнение Закладки
Бесплатно по России:
8 800 700 97 66
Санкт-Петербург:
8 812 385 40 55
Перезвонить вам?

Настройка фильтрации трафика на Mikrotik. Часть 3

Использование собственных цепочек обработки трафика (Custom Chain)

В прошлых частях статьи мы ознакомились с базовыми настройками файрволла, из которых мы, в том числе, узнали, что межсетевой экран маршрутизатора последовательно проверяет пакет на соответствие правилам фильтрации сверху-вниз. Проверка прекращается в тот момент, когда пакет будет либо пропущен на следующий этап обработки трафика (Action=Accept), либо прохождение пакета будет запрещено (Action=reject,drop,tarpit).

Таким образом, если мы представим себе файрволл, состоящий из 25 правил, то выглядеть это будет следующим образом:

При этом, если пакет соответствует только правилу номер 25, он все равно будет проверен на соответствие правилам с номера 1 по номер 24, на что будут потрачены ресурсы маршрутизатора.

Ситуация осложняется тем, что есть «очень дорогие», с точки зрения процессорного времени, правила фильтрации. В этих случаях приходит на выручку возможность писать собственные цепочки (Chain) обработки правила.

Если вы когда-либо занимались программированием, то собственная цепочка очень похожа на процедуру, вызов которой осуществляется указанием в поле Action команды Jump с именем цепочки, возврат же происходит на следующее правило за вызовом цепочки, по окончании обработки трафика в цепочке, либо если в каком-либо правиле собственной цепочки было использовано Action=Return, что прервало дальнейшую обработку цепочки.

Графически это можно отобразить так:

При этом надо обратить внимание, что пакет попадет в цепочку Custom-Chain-1, только если он будет соответствовать условиям, обозначенным в правиле 3a, а в цепочку Custom-Chain-2, только если он соответствует правилу 15a.

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

Так же хочется обратить внимание что одну и ту же цепочку можно вызывать из разных цепочек (в том числе и своих) фильтрации трафика. Например, вы можете написать цепочку с защитой ssh-сервера от подбора пароля и обращаться к ней как из цепочки input (подбор пароля на маршрутизатор), так и из цепочки forward, защищая один или несколько внутренних серверов.

Для примера обсудим, как производится настройка роутера Микротик, имеющего несколько WAN-интерфейсов. В этом случает у вас возникает необходимость либо написания достаточно большого количества одинаковых правил для каждого WAN-интерфейса, либо создания собственной цепочки обработки трафика, и вызов ее при попадании пакета извне на любой из WAN-интерфейсов.

Создаем демилитаризованную зону (DMZ)

Теперь, после небольшого теоретического отступления про собственные цепочки, которые мы с вами будем использовать, мы переходим к обещанному созданию DMZ. Исходя из второй части статьи у нас есть 3 интерфейса:

  • WAN (Выход в интернет);
  • DMZ (Демилитаризованная зона);
  • LAN (Локальная сеть).

Разделим их по уровню доверия.

LAN – самая доверенная сеть. Из нее можно ходить как в WAN, так и в DMZ без ограничений. Чтобы из других сетей попасть в LAN, требуется отдельное правило на файрволле.

DMZ – сеть с промежуточным уровнем доверия. Из нее можно ходить в WAN, однако в LAN без специального разрешения доступ закрыт.

WAN – самая небезопасная сеть. С нее по умолчанию закрыт доступ как в LAN, так и в DMZ.

Графически это можно представить так:

Так же предположим, что в DMZ у нас есть www-сервер с адресом 10.10.10.100, который должен быть доступен из WAN (Вопросы настройки NAT в этой статье не рассматриваются). Так же из DMZ разрешено обращение на порт 22(ssh) хоста 192.168.88.200 расположенного в LAN.

Настройка маршрутизатора

Так как в этой части статьи мы работаем с трафиком, идущим через маршрутизатор, основной цепочкой (Chain) для такого трафика является forward.

Сначала разрешим все соединения с состояниями соединения равными established и related, и запретим с состоянием соединения равным invalid, независимо от интерфейсов. Так как мы уже знаем, что фильтровать трафик логично только на новых соединениях (connection-state=new).

Кроме того, наибольшее количество пакетов как раз относятся к уже установленным соединениям, и указание этого правила в начале списка несколько увеличит производительность.

  • /ip firewall filter
  • add action=accept chain=forward connection-state=established disabled=no
  • add action=accept chain=forward connection-state=related disabled=no
  • add action=drop chain=forward connection-state=invalid disabled=no

Теперь создадим необходимые нам цепочки правил.

LAN-WAN

В этой цепочке мы разрешаем любой трафик от LAN интерфейса к WAN-интерфейсу. При необходимости можно добавить запрещающие правила. (Обратите внимание, что мы не указываем интерфейсы. Они будут указаны в цепочке forward, при переходе на свои цепочки).

  • /ip firewall filter
  • add action=accept chain=LAN-WAN disabled=no

WAN-LAN

А здесь мы, наоборот, запрещаем весь трафик идущий из интерфейса WAN в локальную сеть. Ранее установленные соединения обрабатывается правилом, их разрешающим, заданным ранее.

  • /ip firewall filter
  • add action=drop chain=WAN-LAN disabled=no

LAN-DMZ

  • /ip firewall filter
  • add action=accept chain=LAN-DMZ disabled=no

DMZ-LAN

Здесь нужно пропустить 22 порт на хост 192.168.88.200

  • /ip firewall filter
  • add action=accept chain=DMZ-LAN disabled=no dst-address=192.168.88.200 dst-port=22 protocol=tcp
  • add action=drop chain=DMZ-LAN disabled=no

DMZ-WAN

  • /ip firewall filter
  • add action=accept chain=DMZ-WAN disabled=no

WAN-DMZ

Здесь нам нужно разрешить обращение на хост 10.10.10.100 на порт 80 (www).

  • /ip firewall filter
  • add action=accept chain=WAN-DMZ disabled=no dst-address=10.10.10.100 dst-port=80 protocol=tcp
  • add action=drop chain=WAN-DMZ disabled=no

На этом создание собственных цепочек закончено. Осталось к ним обратиться.

Создаем группу правил в основной цепочке forward. В ней мы, в зависимости от интерфейсов, будем отправлять пакет в подходящую цепочку:

  • /ip firewall filter
  • add action=jump chain=forward disabled=no in-interface=WAN jump-target=WAN-LAN out-interface=LAN
  • add action=jump chain=forward disabled=no in-interface=LAN jump-target=LAN-WAN out-interface=WAN
  • add action=jump chain=forward disabled=no in-interface=DMZ jump-target=DMZ-LAN out-interface=LAN
  • add action=jump chain=forward disabled=no in-interface=LAN jump-target=LAN-DMZ out-interface=DMZ
  • add action=jump chain=forward disabled=no in-interface=WAN jump-target=WAN-DMZ out-interface=DMZ
  • add action=jump chain=forward disabled=no in-interface=DMZ jump-target=DMZ-WAN out-interface=WAN

Для удобства, я поднял эти правила в файрволле повыше, сразу за первыми созданными правилами.

Должно получиться следующее:

Mikrotik настройка Firewall

При дальнейшей оптимизации логично понаблюдать за счетчиками пакетов и более часто используемые правила поместить повыше.

Обратите внимание, что фильтрацию трафика теперь логично проводить в соответствующей цепочке, что значительно упрощает конфигурирование, особенно в случае большого количества правил.

Общий код файрволла:

  • /ip firewall filter
  • add action=accept chain=forward connection-state=established disabled=no
  • add action=accept chain=forward connection-state=related disabled=no
  • add action=drop chain=forward connection-state=invalid disabled=no
  • add action=jump chain=forward disabled=no in-interface=WAN jump-target=WAN-LAN out-interface=LAN
  • add action=jump chain=forward disabled=no in-interface=LAN jump-target=LAN-WAN out-interface=WAN
  • add action=jump chain=forward disabled=no in-interface=DMZ jump-target=DMZ-LAN out-interface=LAN
  • add action=jump chain=forward disabled=no in-interface=LAN jump-target=LAN-DMZ out-interface=DMZ
  • add action=jump chain=forward disabled=no in-interface=WAN jump-target=WAN-DMZ out-interface=DMZ
  • add action=jump chain=forward disabled=no in-interface=DMZ jump-target=DMZ-WAN out-interface=WAN
  • add action=accept chain=LAN-WAN disabled=no
  • add action=drop chain=WAN-LAN disabled=no
  • add action=accept chain=LAN-DMZ disabled=no
  • add action=accept chain=DMZ-LAN disabled=no dst-address=192.168.88.200 dst-port=22 protocol=tcp
  • add action=drop chain=DMZ-LAN disabled=no
  • add action=accept chain=DMZ-WAN disabled=no
  • add action=accept chain=WAN-DMZ disabled=no dst-address=10.10.10.100 dst-port=80 protocol=tcp
  • add action=drop chain=WAN-DMZ disabled=no

Таким образом, мы выполнили базовую настройку Firewall Mikrotik и научились работать с собственными цепочками фильтрации трафика.

Почитать предыдущие части:

Завершающая часть:

Технический директор Илья Князев (MTCNA,MTCWE,MTCTCE,MTCRE,MTCINE)

71810
Комментарии (58)

Александр08.07.2016

Здравствуйте уважаемые специалисты вопрос,имею адрес белый 80.80.80.80 пример адрес роутера 192.168.30.148 как правильно создать DMZ туповат не смог понять как для своей сети всё вышеизложенное применить?

ответить
Сменить картинку

Александр27.05.2016

Здравствуйте. В локальной сети есть сервер АТС-Asterisk для внутренних и внешних пользователей. Куда будет правильнее его поместить в VLAN или DMZ?

ответить
Сменить картинку

Илья Князев06.06.2016

В DMZ пожалуй. Обратите внимание на дополнительную защиту. Например fail2ban.

ответить
Сменить картинку

Саша26.05.2016

Здравствуйте, а как объединить правила с этой статьи и предыдущей? Или просто эти правила поставить ниже правил 2й статьи? И если вам не сложно для нубов написать стандартный тестовый пример настройки роутера, заранее спасибо!

ответить
Сменить картинку

Илья Князев06.06.2016

Во второй статье мы защищали роутер. И там цепочка input использовалась. Здесь мы работаем с клиентским трафиком (цепочка forward)

ответить
Сменить картинку

Саша10.06.2016

Т.е. Сначала в списке идут правила цепочки Input, а дальше уже forward? Или же можно их менять местами для улучшения производительности?

ответить
Сменить картинку

Илья Князев15.06.2016

Трафик попадает в ОДНУ из трех цепочек
input
output
forward
Далее обрабатывается в этой цепочке последовательностью правил.
Таким образом без разницы с точки зрения производительности, правила какой из цепочек будут выше.

ответить
Сменить картинку

Саша10.06.2016

Т.е. Сначала в списке идут правила цепочки Input, а дальше уже forward? Или же можно их менять местами для улучшения производительности?

ответить
Сменить картинку

Роман15.03.2016

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

ответить
Сменить картинку

Яр11.01.2016

Добавьте ссылку на 4-ю часть, пожалуйста! http://spw.ru/solutions/nastrojka_filtracii_trafika_na_mikrotik_chast_4/

ответить
Сменить картинку

Борис07.10.2015

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

ответить
Сменить картинку

Илья Князев10.11.2015

Настройте правило, которое будет заносить отправителя такого трафика в address-list и блокируйте по этому списку.

ответить
Сменить картинку

Сергей10.02.2015

Добрый день!

Вопрос про использование jump-ов. Хотелось бы оптимизировать работу маршрутизатора и несколько визуально упорядочить список правил (их становится все больше и больше).
В текущей реализации фаейрвола маршрутизатора в цепочках forward используются группы ip-адресов. Правильно ли я понимаю, что в таком случае для каждой группы ip-адресов мне следует создать две цепочки jump: одна с условием проверки на src-address-list, вторая dst-address-list? И далее с каждым таким jump'ом связать текущие цепочки forward для каждой группы ip-адресов?

заранее благодарен.

ответить
Сменить картинку

Илья Князев25.02.2015

Тут не готов сказать как правильнее.
Есть инструмент. Вы сами выбираете как им пользоваться.
Я бы скорее всего связывал цепочку forward для группы.

ответить
Сменить картинку

Сергей11.03.2015

Добрый день!

Илья, спасибо за Ваш комментарий.
В итоге оптимизировал цепочки forward и создал джампы с условием фильтра по группам IP-адресов, внутри которых осуществляется рулежка по портам.
Помог Ваш материал и информация с http://wiki.mikrotik.com/wiki/Protecting_your_customers.

Дополнительно хотел спросить у Вас такую вещь - есть ли смысл (выигрыш в производительности, например) в конце каждой цепочки firward ставить правило drop для пакетов, которые не отфильровались по правилам для соответствующего jump'а? Или одного правила вида add chain=forward action=drop comment="drop everything else" в конце всего списка правил будет достаточно?

ответить
Сменить картинку

Сергей23.03.2015

Илья, и еще вопрос. Вроде бы же для DMZ в представленном примере add action=accept chain=DMZ-WAN disabled=no не будет корректно работать без маскарадинга?

ответить
Сменить картинку

Илья Князев25.03.2015

Будет.
Фильтры и NAT это разные части файрволла. И в общем и целом далеко не факт, что в DMZ не используются реальные IP адреса

ответить
Сменить картинку

Илья Князев25.03.2015

Будет.
Фильтры и NAT это разные части файрволла. И в общем и целом далеко не факт, что в DMZ не используются реальные IP адреса

ответить
Сменить картинку

Илья Князев04.04.2015

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

ответить
Сменить картинку

Grecha27.01.2015

Илья, большое спасибо за цикл статей!
Все доступно и понятно даже для таких новичков, как я.

Разбираюсь с набором правил для firewall, Вы не могли бы посмотреть:
/ip firewall filter

add chain=input protocol=icmp action=accept comment=”Allow Ping”

add chain=forward protocol=icmp action=accept

add chain=input connection-state=established action=accept comment=”Accept established connections”

add chain=forward connection-state=established action=accept

add chain=input connection-state=related action=accept comment=”Accept related connections”

add chain=forward connection-state=related action=accept

add chain=input connection-state=invalid action=drop comment=”Drop invalid connections”

add chain=forward connection-state=invalid action=drop

add chain=input protocol=udp action=accept comment=”Allow UDP”

add chain=forward protocol=udp action=accept

add chain=forward src-address=192.168.0.0/24 in-interface=ether2 action=accept comment=”Access to Internet from local network”

add chain=input src-address=192.168.0.0/24 action=accept comment=”Access to Mikrotik only from our local network”

add chain=input action=drop comment=”All other drop”

add chain=forward action=drop

Вопрос по правилам 9-10, разрешающие входящий и транзитный трафик UDP. Не потенциальная ли это дыра в безопасности? Насколько это необходимо, у меня через эти правила проходит огромное количество пакетов (по сравнению с другими правилами), но если убрать эти правила - то все сервисы, используемые в локальной сети (доступ в веб, банк-клиент, мессенджеры), продолжают работать. Прокомментируйте, пожалуйста, смысл и необходимость этих правил.

Заранее спасибо.

ответить
Сменить картинку

Илья Князев05.03.2015

Спасибо за обратную связь.
В случае input не вижу смысла в этом правиле. Вполне достаточно чтобы на input снаружи были разрешены
1. ICMP
2. Соединения в состоянии Established и Related
3. Если на роутере используется какой-нибудь сервис то доступ к нему (например у вас на роутере настроен VPN сервер.)
В правиле 10 тоже не вижу смысла. Особенностью цепочки forward при использовании NAT является то, что пакет для попадания в цепочку должен быть сначала отправлен изнутри сети или попасть под правило с "пробросом" портов. Т.е. под dst-nat.
Пакет просто пришедший снаружи никаким иным образом в эту цепочку попасть не может.

ответить
Сменить картинку

suren19.01.2015

Добрый день. Как правильно соединить 2 роутера mikrotik с помощью gre-tunnel?

ответить
Сменить картинку

Илья Князев19.01.2015

Добрый день.
Ваш вопрос выходит за рамки данной статьи. Если кратко - создать gre-туннель и настроить маршрутизацию.
Если нужно более полно, ждите статьи по VPN

ответить
Сменить картинку

suren21.01.2015

я настроил в обеих сторонах gre-tunnel идентично(зеркально), но видит только сеть с одной стороны, с другой стороны не пингуется, сеть не видит? а когда будет ваша статья? Спасибо заранее

ответить
Сменить картинку

Илья Князев05.03.2015

Проверьте, что у вас есть правило в цепочке input разрешающее принимать gre с другой стороны.

ответить
Сменить картинку

Дмитрий24.12.2014

В начале статьи ИМХО опечатка: (Action=deny,...) надо заменить на (Action=reject,...)

ответить
Сменить картинку

Илья Князев25.12.2014

Спасибо, исправим.

ответить
Сменить картинку

Иван08.12.2014

Добрый день!
Можете подсказать, как настроить микротик, чтобы работал только whatsapp и ничего кроме него?

ответить
Сменить картинку

Илья Князев09.12.2014

Могу. Вам надо узнать на каких портах работает WhatsApp и написать правила.
Немного подскажу.
WhatsApp messenger uses these ports: 5223, 5228, 4244, 5242 and 5222

ответить
Сменить картинку

Юрий08.12.2014

Уважаемый Илья! Очень полезная серия статей по фильтрам Микротик. Я работаю с большим количеством разнообразных моделей Микротик несколько лет, и все равно очень приятно прочитать ваши статьи и упорядочить свои знания, а еще и обновить новыми приемами, спасибо! При этом, у меня тоже есть проблемы с настройками фильтрации, в основном связанные с протоколом Leyer 7. Если возможно, дайте оценку, почему не работает этот фильтр?
Leyer 7 - robo-qiwi regexp=^.*(get|GET).+(qiwi.ru|robokassa.ru).*$
;;; ALLTRAFFIC
chain=forward action=mark-connection new-connection-mark=ALLTRAFFIC
passthrough=yes

1 ;;; Robo-qiwi-packet
chain=forward action=mark-packet new-packet-mark=robo-qiwi-packet
passthrough=yes layer7-protocol=robo-qiwi connection-mark=ALLTRAFFIC
Дальше фильтр (Точнее-разрешающая запись):
;;; acept all users--L7-Robo-qiwi
chain=forward action=accept protocol=tcp src-address-list=balans00-users
packet-mark=robo-qiwi-packet


Пакеты не метятся, значит нет трафика через разрешающуюся запись, не понимаю причину. Менял синтаксис в правиле L7, ничего не помогает, делаю любой другой вариант фильтрации кроме L7- все работает.
Буду признателен за подсказку.

ответить
Сменить картинку

Илья Князев09.12.2014

Где-то в Regexp ошибка. Не готов утверждать, но скорее всего get проходит уже внутри https. Т.е. в прямом виде это выражение недоступно.
В любом случае L7 без сниффера бесполезно писать.

ответить
Сменить картинку

Baklan07.11.2014

Hi, у меня хит сезона RB2011UiAS-2HnD-IN для малого офиса. СПС за статью по настройке: "Настройка маршрутизатора RB2011. Устранение недостатков стандартной конфигурации" - все получилось и инет и вайфай все работает, правда есть кое-что дополнить по статье, но это потом сделаю. Вопрос такой-поскольку я заменяю на микротики все зухели, трлинки и пр. (понял уже разницу)то прошу подсказать как быстро сделать проброс портов к серверу 192.168.88.249 извне для доступа к удаленному рабочему столу (RDP)по порту 3389. Сервер терминалов поднят и в локалке все тип топ.
Какую статью если что посмотреть.

ответить
Сменить картинку

Илья Князев07.11.2014

Так dst-nat это.
/ip firewall nat add action=dst-nat chain=dstnat dst-address=WAN_ADDRESS dst-port=ПОРТ_СНАРУЖИ in-interface=WAN_INTERFACE protocol=tcp to-addresses=АДРЕС_ВНУТРИ to-ports=3389

При этом если у вас один внешний адрес, то поле dst-address можно не указывать.

По NAT будут статьи. Тема не самая простая, двумя словами не напишешь.

ответить
Сменить картинку

Baklan07.11.2014

Thanks!!!

ответить
Сменить картинку

Baklan11.11.2014

Если мне нужен проброс только с определенных внешних IP-адресов (например с 176.40.88.123), то dst-address=176.40.88.123 ? А если таких несколько, то их в список где-то воткнуть нужно? Dst. addresses list? Подскажите Src. addresses для чего нужен? СПС заранее.

ответить
Сменить картинку

Baklan11.11.2014

Все втупил по Src. addresses=176.40.88.123 тогда только с него и можно попасть в локалку извне. Подскажите есть ли возможность задать список таких внешних Ip адресов... или создавать для каждого из низ отдельное правило?

ответить
Сменить картинку

Илья Князев19.11.2014

Совершенно неверно использовать NAT как файрволл.
Правилом NAT обрабатывается только первый пакет соединения. Остальное обрабатывается Connection Tracker-ом.
Фильтровать надо в цепочке forward файрволла.
src-addreee и src-address-list нужны для отбора пакета по адресу источника.

ответить
Сменить картинку

Андрей23.03.2015

Подскажите пожалуйста какое правило должно быть?

ответить
Сменить картинку

PuCtoy08.10.2014

День добрый,

подсобите пожалуйста создать правило которое позволит из локалки установить соединение с внешним сервером на определенном порту и протоколом.

Вот список текущих правил

0 ;;; Allow Ping
chain=input action=accept protocol=icmp

1 chain=forward action=accept protocol=icmp

2 ;;; Accept established connections
chain=input action=accept connection-state=established

3 chain=forward action=accept connection-state=established

4 ;;; Accept related connections
chain=input action=accept connection-state=related

5 chain=forward action=accept connection-state=related

6 ;;; Remote Service
chain=input action=accept connection-state=new protocol=tcp dst-port=8291

7 ;;; Allow UDP
chain=input action=accept protocol=udp

8 chain=forward action=accept protocol=udp

9 ;;; Access to Internet from local network
chain=forward action=accept src-address=192.168.1.0/24 in-interface=ether4

10 chain=input action=accept src-address=192.168.7.0/24

11 chain=forward action=accept src-address=192.168.7.0/24 in-interface=ether5

12 ;;; Access to Mikrotik only from our local network
chain=input action=accept src-address=192.168.1.0/24

13 ;;; Drop invalid connections
chain=input action=drop connection-state=invalid

14 chain=forward action=drop connection-state=invalid

15 ;;; All other drop
chain=input action=drop

16 chain=forward action=drop

17 ;;; Block BOGON network WAN
chain=input action=drop src-address-list=BOGON in-interface=ether2

ответить
Сменить картинку

Илья Князев08.10.2014

chain=forward
protocol=ваш протокол (tcp/udp)
dst-port=порт
action=accept
правило должно быть выше чем ваше правило номер 16

ответить
Сменить картинку

PuCtoy08.10.2014

Все верно такое правило я создавал, но при запуске ПО вижу ошибку по тайм ауту.


13. Как проверить возможность соединения ФПСУ-IP/Клиент через межсетевой экран или прокси-сервер?
а) Скачайте тестовое приложение TEST CLIENT
б) Запустите файл «client.exe».
в) Введите IP-адрес сервера 77.108.111.100 и нажмите «Проверить».
г) Получение ответа от сервера означает корректность настройки межсетевого экрана или прокси-сервера. Примечание: если используется прокси-клиент ( т.к. ISA-client и др.), то его необходимо отключить на время проведения тестирования.

ответить
Сменить картинку

PuCtoy08.10.2014

Надо проверить соединение по 87 порту.

ответить
Сменить картинку

Илья Князев09.10.2014

Обновите Router до последней версии.
Включите log на правиле с drop-ом.
Посмотрите что происходит и настройте роутер.

ответить
Сменить картинку

Илья Князев05.11.2014

Ну и набор у Вас. Хоть бы последовательно input и forward расписали, а не вперемежку.

chain=forward action=accept src-address=АДРЕС_КЛИЕНТА in-interface=ИНТЕРФЕС_КЛИЕНТА out-interface=WAN_Интрефейс dst-address=АДРЕС_СЕРВЕРА dst-port=ПОРТ_СЕРВЕРА protocol=TCP_ИЛИ_UDP
поставить выше правил дропающих пакеты. Как-то так.

ответить
Сменить картинку

Сергей07.08.2014

Из того, что нашел в инете-ваши статьи самые толковые...
Спасибо
Не планируете статьи по VPN?

ответить
Сменить картинку

Илья Князев27.08.2014

Планирую.
Но, наверное сначала NAT и WiFi

ответить
Сменить картинку

Наблюдатель27.07.2014

На интерфейсу ether1 поднят pppoe1. Так что в правилах указывать в качестве WAN pppoe1 или ether1?

ответить
Сменить картинку

Илья Князев28.07.2014

Добрый день.
Указывать тот интерфейс, который является внешним. В данном случае PPPoE1.
Обратите внимание, что ether1 тоже относится к небезопасной сети. И если на нем есть IP-адрес - будет правильно защитить маршрутизатор от доступа с этого интерфейса (см. ч.2 статьи).

ответить
Сменить картинку

Александр04.07.2014

Илья, большое спасибо за прекрасные статьи! Вопрос следующий: при описанных настройках firewall, надо ли дополнительно блокировать порты от сканирования из WAN и прописывать правила для отражения разного рода специфических попыток взлома или того что есть вполне достаточно для безопасной работы?

ответить
Сменить картинку

Илья Князев04.07.2014

То что указано во второй части статьи вполне достаточно для защиты маршрутизатора.
Что касается специфических атак, они направлены на конкретные сервисы. И тут Вы должны сами определить, какие сервисы у Вас есть, и как Вы их будете защищать.
Третья часть, описывает, в общем-то заготовку под дальнейшую настройку, которая проводится в соответствующих цепочках. Так как охватить все варианты сервисов и их защиты невозможно.
Я думаю написать еще одну-две части про файрволинг, где опишу защиту некоторых сервисов и, может быть, работу с L7-фильтром.
PS. Спасибо за отзывы.

ответить
Сменить картинку

Виктор13.06.2014

Подскажите, а есть ли возможность на микротике, также как и на ubiqiti применять настройки в тестовом режиме, чтобы был откат через 5 минут. а то постоянно накосячишь случайно, а потом приходится до устройства добираться, а МТ за несколько километров от дома(( ??

ответить
Сменить картинку

Илья Князев14.06.2014

Конечно есть.
Для этого предназначена кнопка [Safe Mode] в левом верзнем углу winbox. Таймаут сессии 9 минут.
Т.е. нажали Safe Mode, поработали, отпустили.
Еще удобнее в консоли
Ctrl+X = safe mode
Далее Ctrl+X = Выход из Safe Mode и сохранение изменений
Ctrl+D = Выход из Safe Mode с потерей (откатом) изменений.

ответить
Сменить картинку

Виктор09.06.2014

Круть! С помощью решения, начал понимать принципы работы микротика, а то до этого смотрел на него как на простой роутер)) Спасибо
А будут ли еще статьи?

ответить
Сменить картинку

Илья Князев11.06.2014

Конечно будут.
Заходите к нам на сайт ))

ответить
Сменить картинку

Max01.06.2014

Спасибо за статьи! Очень познавательно.

Код для "WAN-LAN" всё-таки должен быть:
/ip firewall filter
add action=accept chain=WAN-LAN disabled=no

ответить
Сменить картинку

Илья Князев01.06.2014

Нет, не должен.
Мы блокируем все соединения с WAN на LAN, за исключением уже установленных и зависимых (первые два правила файрволла).

ответить
Сменить картинку

Max04.06.2014

Теперь уже я одну часть исправил (имя цепочки, которую в статье уже поправили), а вторую забыл.

ответить
Сменить картинку

Илья Князев04.06.2014

Да, в статье была опечатка.
Благодарая Вашему комментарию, была найдена и исправлена.
Спасибо!

ответить
Сменить картинку
Комментировать
Сменить картинку
все события