Блокировка cоциальных сетей средствами Mikrotik

Ноябрь, 16th 2018Рубрика: Советы 694
Подписаться на комментарии по RSS

Блокировка cоцсетей средствами Mikrotik

Задача блокировки социальных сетей Вконтакте, Одноклассники, да и любых других сайтов, очень просто решается средствами самого маршрутизатора Mikrotik. В основном, в сети можно найти описание уже устаревшего варианта решения данной проблемы с использованием L7 протокола.

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

Пример такого неудачного регулярного выражения Layer7 Protocols для фильтрации социальных сетей:

^.+(vk.com|vkontakte|ok.ru|odnoklassniki|facebook|loveplanet|love.mail.ru).*$

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

Блокировка cоцсетей на Mikrotik через адресные листы

настройка фаервола для блокировки cоцсетей на Mikrotik

В RouterOS, начиная с версии v6.36, появилась возможность добавлять доменные имена в адресные листы. В результате отпала необходимость заморачиваться с составлением регулярных выражений для Layer7 Protocols и такой вариант блокировки нежелательных сайтов практически не нагружает процессор роутера.

Первым делом добавляем нужные сайты в адресный лист (назовём его social). Сделать это можно и через web-интерфейс, перейдя в меню IP > Firewall > Address_Lists, но в данном случае удобнее использовать режим терминала (тоже в web-интерфейсе):

/ip firewall address-list add address=vk.com list=social
/ip firewall address-list add address=ok.ru list=social

Весьма удобно, что соцсети сами делают редирект на свои короткие доменные имена, потому нет необходимости дополнительно прописывать vkontakte.ru или odnoklassniki.ru и тому подобное, они заблокируются самостоятельно.

Осталось добавить правило блокировки в файервол:

/ip firewall filter add action=drop chain=forward src-address=192.168.11.0/24 dst-address-list=social

В приведённом примере блокируются соединения для доменов vk.com и ok.ru для всей подсети 192.168.11.0/24. Роутер самостоятельно добавляет нужные ip адреса, соотвествующие этим доменам в файервол. Вместо drop я бы рекомендовал использовать reject, так как оно быстрее сбрасывает соединение:

/ip firewall filter add action=reject chain=forward src-address=192.168.11.0/24 dst-address-list=social protocol=tcp reject-with=tcp-reset

Что ещё почитать про настройку MikroTik:

Не ленитесь ставить лайк и подписываться на канал Дзен и паблик Вконтакте, будет ещё много интересного.

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

Комментариев: 1

  1. 2018-11-25 в 13:37:39 | Игорь Сошников

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

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