Товари
 
Виробники
 
Новини
 
Статті

Блокирование сайтов в роутере MikroTik

01.02.2018
  1. Блокирование сайтов по имени
  2. Блокирование сайтов по IP-адресу
  3. Блокирование HTTPS сайтов
  4. Блокирование сайтов с помощью статических DNS записей
  5. Блокирование сайтов с помощью Proxy сервера

В этой инструкции вы узнаете, как заблокировать любой сайт в роутере MikroTik, социальную сеть одноклассники, вконтакте и т.п.

 

Блокирование сайтов по имени

В MikroTik RouterOS, начиная с версии 6.36, появилась возможность указывать DNS-имена сайтов в адрес-листах, а роутер сам определяет их IP-адреса или диапазоны IP-адресов. Поэтому процесс блокировки сайтов с помощью фаервола существенно упростился.

В RouterOS 6.36 и выше откройте меню NewTerminal и выполните следующие команды для блокировки сайтов:

# Добавляем список запрещенных сайтов с названием BlockedSites
/ip firewall address-list add list=BlockedSites address=youtube.com disabled=no
/ip firewall address-list add list=BlockedSites address=vk.com disabled=no
/ip firewall address-list add list=BlockedSites address=ok.ru disabled=no

# Добавляем в фаервол правило блокировки сайтов из списка BlockedSites
/ip firewall filter add chain=forward src-address-list=BlockedSites protocol=tcp action=reject reject-with=tcp-reset comment="BlockedSites" disabled=no

# Перемещаем в фаерволе правило BlockedSites вверх выше остальных правил
/ip firewall filter move [find comment="BlockedSites"] 1

Cписок запрещенных сайтов можно редактировать в меню IP - Firewall на вкладке Address Lists.

Правило блокировки находится в меню IP - Firewall на вкладке Filter Rules.

RouterOS по имени сайта неплохо определяет диапазоны IP-адресов, но не идеально. Мне не удалось с помощью данного способа заблокировать сайты facebook.com и instagram.com, поскольку MikroTik нашел не все необходимые диапазоны IP-адресов. Пришлось вручную найти необходимые IP-адреса и добавить их. Как это сделать, написано ниже.

 

Блокирование сайтов по IP-адресу

Фаервол позволяет заблокировать сайт по его IP-адресу. Узнать IP-адрес сайта можно в Windows, набрав в консоли команду nslookup имя сайта, например nslookup vk.com.

nslookup vk.com

 

Чтобы выполнить команду nslookup в маршрутизаторе MikroTik, откройте меню New Terminal и выполните команду-аналог put [:resolve vk.com]

Аналог команды nslookup в роутере MikroTik

 

Сайты социальных сетей имеют много серверов с разными IP-адресами и вышеуказанные команды могут не показать адреса всех серверов. Поэтому лучше всего с помощью онлайн сервисов whois узнать, какие сети принадлежат данной социальной сети. Например, Vkontakte Ltd принадлежит сеть 87.240.128.0/18 и 93.186.224.0/22.

Whois информация о Vkontakte Ltd

 

В поиске IP-адресов также поможет сервис bgp.he.net

Сервис bgp.he.net

 

После того, как мы узнали нужные нам IP-адреса, выполните в терминале MikroTik следующие команды:

# Добавляем список запрещенных IP-адресов с названием BlockedSites
/ip firewall address-list add list=BlockedSites address=87.240.143.244 disabled=no
/ip firewall address-list add list=BlockedSites address=87.240.128.0/18 disabled=no
/ip firewall address-list add list=BlockedSites address=93.186.224.0/22 disabled=no

# Добавляем в фаервол правило блокировки IP-адресов из списка BlockedSites
/ip firewall filter add chain=forward src-address-list=BlockedSites protocol=tcp action=reject reject-with=tcp-reset comment="BlockedSites" disabled=no

# Перемещаем в фаерволе правило BlockedSites вверх выше остальных правил
/ip firewall filter move [find comment="BlockedSites"] 1

 

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

 

Блокирование HTTPS сайтов

Сейчас в интернете много сайтов используют защищенный протокол https, который шифрует данные. Поэтому контент таких сайтов очень сложно фильтровать. В MikroTik RouterOS, начиная с версии 6.41.1, появилась возможность блокировать https-сайты (TLS трафик) с помощью расширения TLS SNI, называемого «TLS-HOST»

Например, чтобы заблокировать сайт youtube.com, выполните в терминале MikroTik следующие команды:

# Добавляем в фаервол правило блокировки HTTPS сайта
/ip firewall filter add chain=forward dst-port=443 protocol=tcp tls-host=*.youtube.com action=reject comment="BlockHttpsSite" disabled=no

# Перемещаем в фаерволе правило BlockHttpsSite вверх выше остальных правил
/ip firewall filter move [find comment="BlockHttpsSite"] 1

В параметре tls-host можно указывать имена сайтов, составленных с использованием синтаксиса GLOB. Этот синтаксис используют для создания подстановочных знаков в имени сайта.

Обратите внимание, что если фрейм TLS handshake будет фрагментирован на несколько TCP сегментов (пакетов), то невозможно будет сопоставить имя сайта и заблокировать его.

 

Блокирование сайтов с помощью статических DNS записей

Заблокировать доступ к сайту можно также, создав статическую DNS запись с названием сайта и несуществующим IP адресом для него, например 127.0.0.1. Перед именем сайта бывает автоматически приписывается www, поэтому нужно создавать две записи, например odnoklassniki.ru и www.odnoklassniki.ru

Откройте меню NewTerminal и выполните следующие команды для блокировки одноклассников:

/ip dns static add name="odnoklassniki.ru" address=127.0.0.1
/ip dns static add name="www.odnoklassniki.ru" address=127.0.0.1

 

У пользователей заблокированные сайты еще будут открываться некоторое время, потому что на компьютерах есть DNS кэш, в котором временно хранятся имена посещенных сайтов и их IP адреса. Для очистки DNS кэша на компьютере нужно запустить командную строку cmd и ввести команду ipconfig /flushdns.

Такой способ блокирования сайтов будет работать только в том случае, если пользователь использует DNS сервер центрального роутера MikroTik. Если пользователь настроит вручную другой адрес DNS сервера, то ограничение работать не будет. Поэтому все DNS запросы необходимо завернуть на наш роутер. Для этого откройте меню New Terminal и выполните следующие команды:

/ip firewall nat
add chain=dstnat protocol=udp dst-port=53 action=redirect 
add chain=dstnat protocol=tcp dst-port=53 action=redirect 

 

Далее перейдите в меню IP - Firewall и на вкладке NAT переместите созданные правила вверх. Теперь все DNS запросы будут идти через наш роутер.

Защита от альтернативных DNS серверов в роутере MikroTik

 

Блокирование сайтов с помощью Proxy-сервера

Закрыть доступ к сайтам можно также с использованием прозрачного proxy-сервера MikroTik.

Разрешим использование прокси-сервера и настроим его. Для этого откройте New Terminal и выполните следующие команды:

/ip proxy
set enabled=yes
set src-address=0.0.0.0
set port=8080
set parent-proxy=0.0.0.0
set parent-proxy-port=0
set cache-administrator="webmaster"
set max-cache-size=none
set cache-on-disk=no
set max-client-connections=600
set max-server-connections=600
set max-fresh-time=3d
set always-from-cache=no
set cache-hit-dscp=4
set serialize-connections=no

 

Делаем proxy-сервер прозрачным:

/ip firewall nat add chain=dstnat protocol=tcp dst-port=80 action=redirect to-ports=8080

 

Закрываем доступ к прокси-серверу со стороны интернета:

/ip firewall filter add chain=input in-interface= protocol=tcp dst-port=8080 action=drop

 

Вводим команду блокировки сайта:

/ip proxy access add dst-host=www.odnoklassniki.ru action=deny

 

Друкована версія Поділіться статтею:
  • Звичайна форма
  • Facebook

Відгуки про статтю

  Оцінка: 5, Голосів: 17, Коментарів: 55

Залишити коментар
Ваше ім’я: *
Ваша пошта:  

Коментар: *
Оцiнка:  
Введіть символи: *
Поновити
 
Vladyslav 03.04.2023 12:39:19
Добрый день, пытаюсь настроить Веб Прокси на RB750 прошивка 6.49.7 (stable). Включаю явный Веб прокси на порту 8080, на компе прописываю в настройках браузера айпи роутера и порт. но ничего не открывается. На роутере при включении состояние Веб Прокси - passthrough, проверял на других моделях все работает но стостояние - RUN. ПОдскажите что я упускаю или эти модели не поддерживают проксирование?
Сергей 08.11.2020 23:42:58
А как заблокировать с помощью статических DNS записей конкретных пользователей по IP или МАК адресу? У меня из всех способов блокировки работает только по DNS, остальное не блокирует....
Владимир 09.07.2020 09:29:18
Возможно ли заблокировать определенную страницу https сайта? Например: https://site.ru/stranica а не весь сайт.
Владимир 16.04.2020 18:12:55
После команды:
+++++++++++++++++++++++
Делаем proxy-сервер прозрачным:

/ip firewall nat add chain=dstnat protocol=tcp dst-port=80 action=redirect to-ports=8080
++++++++++++++++++++++++
Микротик перестает отвечать по web-интерфейсу...
Техпідтримка 16.04.2020 18:50:51
Используйте Winbox или измените номер порта для Web-интерфейса MikroTik. Номер порта можно изменить в меню IP - Services, открываете настройки сервиса "www" и меняете номер порта.
Владимир 16.04.2020 19:14:17
Спасибо, помогло
Ильдар 09.04.2020 14:17:40
По поводу блокировки сайтов по имени. Для блокировки instagram.com я добавил два адреса: www.instagram.com, instagram.com. После этого сайты недоступны.
Roman Yevtukhov 03.04.2020 21:17:14
такие правила имеют действо быть, но! проще через ip>firewall>layer7 add Regexp и там пишите что хотите, по маске, по имени, по ключевым буквам.... и дт и тп.. ГЛАВНОЕ ! не использовать fasttrack , вешаете правило через forward reject tcp reset и вуаля ////
Виктор 04.10.2019 17:33:49
Почему не сделать еще как делать без коммандных строк, а в картинках? Чтобы было понятно наглядно что и где устанавливается
Вася 20.02.2020 17:01:19
потому что иди купи асус мыльницу и никогда не пиши в интернете более
Максим 22.08.2019 09:26:34
Самая отличная статья без воды! Автору 5+, заблокировал сайты без проблем!
Leonid Krasnov 23.05.2019 20:02:05
Блокирование HTTPS сайтов с помощью расширения TLS SNI не блочит, хотя стоит ROS 6.42.6. Также Блокирование сайтов по имени, блокирует вообще весь интернет. Блокирование сайтов с помощью статических DNS записей не блочит. Как же заблокировать youtube odnoklassniki vk. Ни один из способов не рабочий. Остаются блокировка по ip и proxi, но там писанины много и пока не уверен получиться ли?
Техпідтримка 24.05.2019 10:40:42
Для блокировки этих сайтов нужно блокировать по IP, постоянно вычислять подсети, следить за появлением новых.
Для особо продвинутых пользователей придется выискивать и блокировать сайты анонимайзеры, VPN сервера Opera и др. VPN сервисы.
В общем этот процесс очень трудоемкий, если эти сайты нужно по настоящему заблокировать.
Сторінки: 1, 2, 3, 4
Магазин
Техпідтримка
Наші партнери
   
© 2003–2024 «Компанія ТехноТрейд»
інтернет-магазин мережевого обладнання
×
×
Валюта: