Правильная настройка L7 Filter

Раздел для тех, кто начинает знакомиться с MikroTik
Правила форума
Как правильно оформить вопрос.
Прежде чем начать настройку роутера, представьте, как это работает. Попробуйте почитать статьи об устройстве интернет-сетей. Убедитесь, что всё, что Вы задумали выполнимо вообще и на данном оборудовании в частности.
Не нужно изначально строить Наполеоновских планов. Попробуйте настроить простейшую конфигурацию, а усложнения добавлять в случае успеха постепенно.
Пожалуйста, не игнорируйте правила русского языка. Отсутствие знаков препинания и неграмотность автора топика для многих гуру достаточный повод проигнорировать топик вообще.

1. Назовите технологию подключения (динамический DHCP, L2TP, PPTP или что-то иное)
2. Изучите темку "Действия до настройки роутера".
viewtopic.php?f=15&t=2083
3. Настройте согласно выбранного Вами мануала
4. Дочитайте мануал до конца и без пропусков, в 70% случаев люди просто не до конца читают статью и пропускают важные моменты.
5. Если не получается, в Winbox открываем терминал и вбиваем там /export hide-sensitive. Результат в топик под кат, интимные подробности типа личных IP изменить на другие, пароль забить звездочками.
6. Нарисуйте Вашу сеть, рисунок (схему) сюда. На словах может быть одно, в действительности другое.
Ответить
PetrT
Сообщения: 11
Зарегистрирован: 12 дек 2017, 13:11

День добрый, уважаемые форумчане.

Помогите понять в чем ошибка.

Задача, настроить блокировку нежелательных сайтов с помощью L7 Filter. На данном этапе пока не маркирую соединения для дропа соединения и пакетов, а просто тестирую логику работы L7 Filter.

Имеем.
Маршрутизатор 951Ui-2nD. Прошивка Current 6.42.6

Настройка
Настройка выражения L7

Код: Выделить всё

/ip firewall layer7-protocol
add name=SocialBlock_L7 regexp="^.+(www.ok.ru|www.vk.com|www.fb.com|www.facebook.com).*\$"
А вот теперь вопрос. Говорят, что правило L7 должно стоять после правила разрешающего establish&related onnection, но у меня если поставить правило L7 до establish&related, то сайты не открываются и счетчик правила L7 тикает, а если поставить L7 после establish&relate, то L7 уже не работает и счетчик стоит на нуле.

На сайте mikrotik написано

L7 matcher collects the first 10 packets of a connection or the first 2KB of a connection and searches for the pattern in the collected data. If the pattern is not found in the collected data, the matcher stops inspecting further.

По логике, даже если правило L7 стоит после establish&related, то правило L7 все равно должно сработать при установке соединения (пока оно в статусе new) а дальше, не обращая внимания на establish&related собрать 10 пакетов или 2KB. Но... так оно не хочет работать =(

Вариант 1. рабочий.

Код: Выделить всё

add action=reject chain=forward comment="drop social L7 layer" layer7-protocol=SocialBlock_L7 protocol=tcp reject-with=tcp-reset
add action=drop chain=forward comment="Drop all invalid forward connections" connection-state=invalid
add action=accept chain=forward comment="Accept forward established and related connections" connection-state=established,related
Вариант 2. Не работает.

Код: Выделить всё

add action=drop chain=forward comment="Drop all invalid forward connections" connection-state=invalid
add action=accept chain=forward comment="Accept forward established and related connections" connection-state=established,related
add action=reject chain=forward comment="drop social L7 layer" layer7-protocol=SocialBlock_L7 protocol=tcp reject-with=tcp-reset
Я может что-то неправильно понял про L7? Подскажите, где ошибся.


Erik_U
Сообщения: 1753
Зарегистрирован: 09 июл 2014, 12:33

В правиле establish&related поставьте свой L7 с восклицательным знаком.
тогда правило будет разрешать все, кроме вашего L7.
А следующим правилом решите, что делать с этими пакетами L7.


PetrT
Сообщения: 11
Зарегистрирован: 12 дек 2017, 13:11

Пропускать правило L7 в established&related с помощью инверсии, как мне кажется, немного не тот ответ который я ищу. Найду вразумительный ответ, отпишусь =)
Спасибо за помощь


Erik_U
Сообщения: 1753
Зарегистрирован: 09 июл 2014, 12:33

У микротика каждый пакет проверяется по списку фильтров сверху вниз.
И если находится фильтр, условиям которого этот пакет удовлетворяет, он этим фильтром обрабатывается, и все.
Фильтры ниже этот пакет уже не обрабатывают.
За исключением пакетов, помеченных в правиле инверсией.


PetrT
Сообщения: 11
Зарегистрирован: 12 дек 2017, 13:11

У нас тогда получается двойная проверка.
На этапе established&related firewall сначала проверяет не совпадает ли наш пакет с L7 правилом, а потом уже следующее правило, где опять же идет повторная проверка на совпадение с L7. Это не есть гуд.


PetrT
Сообщения: 11
Зарегистрирован: 12 дек 2017, 13:11

Вы правы. Я неправильно понял логику работы L7.
Спасибо за помощь


Ответить