Блокировка cоциальных сетей средствами Mikrotik
Задача блокировки социальных сетей Вконтакте, Одноклассники, да и любых других сайтов, очень просто решается средствами самого маршрутизатора Mikrotik. В основном, в сети можно найти описание уже устаревшего варианта решения данной проблемы с использованием L7 протокола.
Однако, такой вариант блокировки нежелательных сайтов сильно нагружает процессор маршрутизатора, так как приходится разбирать регулярные выражения, зачастую ещё и не правильно составленные в этих инструкциях. Таким образом можно заблокировать и те сайты, которые по ошибке тоже попали под регулярное выражение.
Пример такого неудачного регулярного выражения Layer7 Protocols для фильтрации социальных сетей:
^.+(vk.com|vkontakte|ok.ru|odnoklassniki|facebook|loveplanet|love.mail.ru).*$
Нетрудно заметить, что под действие данного правила, например, попадают любые сайты с окончанием доменного имени *ok.ru. Плюс возросшая нагрузка на роутер.
Блокировка 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:
- Чем хороша MikroTik Router OS https://mdex-nn.ru/page/mikrotik-router-os.html
- Проброс портов на MikroTik https://mdex-nn.ru/page/probros-portov-v-mikrotik.html
- [Новинка] MikroTik hAP AC2 - лучший роутер для дома и офиса https://mdex-nn.ru/page/mikrotik-hap-ac2.html
- Простая настройка MikroTik с USB модемом ZTE https://mdex-nn.ru/page/mikrotik-and-mf710m.html
- Настраиваем FTP сервер на MikroTik. Простой способ сделать удалённое хранилище файлов на флешке или диске. https://mdex-nn.ru/page/nastraivaem-ftp-server-na-mikrotik.html
Не ленитесь ставить лайк и подписываться на канал Дзен и паблик Вконтакте, будет ещё много интересного.
Комментариев: 5
Весьма толково все описано и в принципе понятно и хотя лично мне не нужно блокировать соц сети, но несомненно найдется достаточно заинтересованных лиц.
А как утуб блокировать?
Если делать так же,то он работает
https таким способом не блокирнёшь.
Вот вариант:
ip firewall mangle add chain=prerouting protocol=tcp tls-host=*youtube.com action=mark-connection new-connection-mark=youtube_conn passthrough=no
ip firewall mangle add chain=prerouting protocol=tcp tls-host=*googlevideo.com action=mark-connection new-connection-mark=youtube_conn passthrough=no
ip firewall mangle add chain=forward connection-mark=youtube_conn action=mark-packet new-packet-mark=youtube_packet passthrough=no
ip firewall filter add chain=forward packet-mark=youtube_packet action=drop
И будет Вам счастье!!!
https блокирнешь, он по ip блокирует