MikroTik и блокировка нежелательных сайтов (на примере youtube и facebook). Как заблокировать сайт на роутере mikrotik


Блокировка сайта в mikrotik

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

Если у вас есть желание научиться работать с роутерами микротик и стать специалистом в этой области, рекомендую пройти курсы по программе, основанной на информации из официального курса MikroTik Certified Network Associate. Все подробности читайте ниже.

Как быстро закрыть доступ к сайту

Начнем с самого простого. У нас есть роутер Mikrotik, утилита winbox и желание конкретному пользователю установить запрет на посещение определенного сайта. Подключаемся к роутеру и идем в раздел IP -> Firewall, открываем закладку Filter Rules:

mikrotik блокировка сайтов

Нажимаем на + и добавляем новое правило блокировки сайта:

добавление правила запрета

На первой вкладке General заполняем:

  1. Указываем цепочку Forward.
  2. Указываем адрес пользователя, которому будет закрыт доступ к сайту.
  3. Выбираем протокол TCP.

Дальше переходим на вкладку Advanced:

правило для vk.com

В поле Content указываем адрес сайта, который нужно заблокировать, например vk.com. Переходим на вкладку Action:

mikrotik заблокировать сайт

Здесь выполняем следующие действия:

  1. В поле Action выбираем reject.
  2. В пункте Reject With указываем tcp reset.
  3. Нажимаем OK.

На этом основная настройка закончена. В данный момент правило по фильтрации сайта уже работает. Мы с помощью стандартных средств mikrotik смогли заблокировать vk.com. Это нетрудно проверить на клиенте. При попытке открыть адрес сайта популярной соц. сети он получит следующее сообщение в браузере chrome:

не открывается заблокированный сайт

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

Черный список сайтов для фильтрации

Давайте создадим отдельно список сайтов и укажем его в правиле, чтобы не создавать запрет для каждого имени отдельно. Сделать это не сложно. Для этого опять идем в раздел IP -> Firewall, открываем вкладку Layer7 Protocols и нажимаем «+» для добавления списка:

добавление layer7 правила

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

^.+(youtube|rutube|smotri).*$

Список можно расширить, добавляя значения в скобках через знак вертикальной палки, что означает логическое «или».

После составления списка, включаем его в правило. Как создать правило я уже рассказал в первой части статьи. В данном случае отличие будет только в одном пункте:

подключение списка layer7

 

Вместо поля Content выбираем название нашего списка для блокировки video в поле Layer7 Protocol.

Если у вас настроен firewall на микротике и в нем присутствуют какие-то правила, то текущее правило блокировки нужно правильно разместить в списке, чтобы оно работало. Например, у меня есть материал на тему настройки firewall. Там есть правила:

Разрешаем установленные подключения add chain=input action=accept connection-state=established add chain=forward action=accept connection-state=established

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

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

Вот как у меня выглядит список моих правил на фаерволе с учетом добавленного правила блокировки:

Список правил фаервола в микротике

Тут я блокирую доступ c тестового ip адреса. Все остальные правила похожи на те, что я описывал в своей статье по настройке простого фаервола на микротике, ссылку на которую я приводил выше.

Вы можете включить логирование заблокированных соединений с сайтами из списка на вкладке Action самого правила:

включение логов в правилах микротика

Mikrotik будет генерировать подобные логи:

текст логов запрета в mikrotik

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

Запретить социальные сети в mikrotik

Так как мы научились составлять списки для блокировки сайтов, на основе этой информации легко закрыть доступ в социальные сети одним правилом. Для этого как и ранее добавляем регулярное выражение со списком соц сетей:

закрытие социальных сетей

Текст регулярки:

^.+(vk.com|vkontakte|odnoklassniki|odnoklasniki|facebook|ok.ru).*$

Дальше создаем правило, как мы это делали выше и выбираем список, который только что добавили:

regexp правило для социальных сетей

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

Блокировка рекламы средствами mikrotik

С помощью изученного средства по ограничению доступа к сайтам достаточно просто блокировать рекламу. Для примера рассмотрим вариант по блокировке рекламы в Skype. Так как я знаю адреса серверов, куда скайп лезет за рекламой, я могу его заблокировать в mikrotik. У меня есть список:

rad.msn.com apps.skype.com vortex-win.data.microsoft.com settings-win.data.microsoft.com

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

Дальше как обычно создаем regexp выражение для списка адресов:

^.+(rad.msn.com|apps.skype.com|vortex-win.data.microsoft.com|settings-win.data.microsoft.com).*$

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

Заключение

Материала в интернете по Микротику много. Я сам пока разбирался в данном вопросе перечитал кучу статей. И все они какие-то недоделанные. Либо вопрос слабо раскрыт, либо что-то вообще не работает. Не знаю, в чем причина такой ситуации. Возможно что-то меняется в настройках и информация становится неактуальной. Сходу у меня не заработала фильтрация на основе Layer7 Protocols, пришлось повозиться, покопаться в regexp, в правилах, в их расположениях. Надеюсь мой материал немного исправит данную ситуацию.

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

Онлайн курсы по Mikrotik

Если у вас есть желание научиться работать с роутерами микротик и стать специалистом в этой области, рекомендую пройти курсы по программе, основанной на информации из официального курса MikroTik Certified Network Associate. Помимо официальной программы, в курсах будут лабораторные работы, в которых вы на практике сможете проверить и закрепить полученные знания. Все подробности на сайте Курсы по ИТ. Стоимость обучения весьма демократична, хорошая возможность получить новые знания в актуальной на сегодняшний день предметной области.

Помогла статья? Есть возможность отблагодарить автора

Рекомендую полезные материалы по схожей тематике:

serveradmin.ru

Расширенные настройки Mikrotik RouterOS: запрет определенных сайтов

Настройка некоторых параметров оборудования Mikrotik. Если вы администратор какой либо сети, то вам рано или поздно, придется столкнуться с задачей, когда необходимо закрыть доступ к определенным сайтам. Если это корпоративная сеть, то это скорей всего будут сайты социальных сетей и разного рода развлекательные сайты. Да и дома, порой, возникает потребность защитить детей, от сайтов нежелательного содержания. Как это сделать в Mikrotik RouterOS? Существует несколько способов, самый простой из них, создать запрещающее правило в Firewall с соответствующим адресом сайта.

К примеру, нам нужно запретить доступ, к сайту odnoklassniki.ru.

Для этого, в утилите Winbox мы заходим в раздел Firewall, и на вкладке Filter Rules добавляем новое правило, нажатием кнопки “+”.

На вкладке General, в параметре Chain выбираем значение forward, в параметре Protocol выбираем значение 6(tcp), Dst. Port, мы пишем 80, а в In Interface ставим “!” возле значения и выбираем наш порт, к которому подключен кабель провайдера, например eather1.

firewall rule routerOs

Далее, переходим на вкладку Adwenced, где в поле Content, вписываем название нашего сайта (желательно без www).

запрет сайтов RouterOS

Потом на вкладке Action в параметре Action, выбираем значение drop, чтобы запретить этот сайт.

Сохраняем наше правило кнопкой Ok

Запрет определенных сайтов RouterOS

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

Список блокируемых сайтов в RouterOS

Если это правило включено, не один компьютер в вашей сети, не сможет посещать сайт Одноклассники.

Но ведь таких сайтов, может быть и 2 и даже 10, а то и 50! Как же быть в таком случае? Ведь 20-30 правил создавать не будешь... так как это создаст большую нагрузку на роутер, и может сказаться на качестве работы всей сети. Для этого мы воспользуемся более сложным, но не менее эффективным способом.

Сперва, мы должны узнать IP адрес или адреса сайта, который мы хотим запретить. Открываем на нашем компьютере консоль, и даем команду nslookup site.com, например для Одноклассников

Поиск IP-сайтов

Мы видим что IP адрес этого сайта 217.20.147.94.

Теперь открываем раздел Firewall, и заходим на вкладку Address List, где кнопкой “+”, добавляем новый адрес. В поле Name мы вписываем название нового списка, например, BlockedSites, а в поле адрес, вписываем адрес этого сайта. И сохраняем кнопкой Ok.

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

Теперь, таким же способом, определяем IP следующего сайта, скажем - Вконтакте

Поиск Ip-сайтов для блокировки их в RouterOS

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

Совет для продвинутых пользователей: не обязательно вводить все адреса по одному. легко выяснить с помощью whois сервиса, что компании Vkontakte Ltd принадлежит сеть 87.240.128.0/18 и забанить ее всю, как и сеть 93.186.224.0/22.

IP-адрес вконтакте

Таким образом, мы имеем список всех адресов сайтов, которые мы хотим запретить. И список этот у нас называется BlockedSites.

Список сайтов которые мы хотим запретить в RouterOS

Теперь мы просто создаем правило в котором мы запрещаем весь этот список.

Для этого, как и в первом случае, в разделе Firewall, переходим на вкладку Filter Rules и добавляем новое правило, нажатием кнопки “+”.

На вкладке General, в параметре Chain выбираем значение forward, в параметре Protocol выбираем значение 6(tcp), Dst. Port, мы пишем 80, а в In Interface ставим “!” возле значения и выбираем наш порт, к которому подключен кабель провайдера, например eather1.

создаем правило в котором мы запрещаем весь этот список RouterOS

Переходим на вкладку Adwenced, где в поле Dst. Address List, выбираем в качестве параметра, созданный нами список BlockedSites.

Блокировка сайтов RouterOS

И по аналогии с первым вариантом, на вкладке Action в параметре Action, выбираем значение drop, чтобы запретить эти сайты.

Сохраняем наше правило кнопкой Ok.

Запрет сайтов RouterOS

И поднимаем наше правило в самый верх списка.

Список Блокированных сайтов RouterOS

Теперь, чтобы запретить любой другой сайт, нам достаточно просто добавить его адрес или адреса, в список BlockedSites на вкладке Address List.

Алексей С., специально для LanMarket

lanmarket.ua

Блокирование сайтов в роутере MikroTik — asp24.ru

  • Блокирование сайтов по имени
  • Блокирование сайтов по IP-адресу
  • Блокирование HTTPS сайтов
  • Блокирование сайтов с помощью статических DNS записей
  • Блокирование сайтов с помощью 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 # Перемещаем в фаерволе правило 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 natadd 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 proxyset enabled=yesset src-address=0.0.0.0set port=8080set parent-proxy=0.0.0.0set parent-proxy-port=0set cache-administrator="webmaster"set max-cache-size=noneset cache-on-disk=noset max-client-connections=600set max-server-connections=600set max-fresh-time=3dset always-from-cache=noset cache-hit-dscp=4set 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

Источник

asp24.ru

MikroTik и блокировка нежелательных сайтов (на примере youtube и facebook) / Хабрахабр

На написание данной статьи меня сподвиг тот факт, что старший ребенок стал по ночам вместо того чтобы укладываться спать, смотреть на своем смартфоне всякие ролики на youtube, до поздней ночи, а так же замена домашнего роутера с TP-Link TL-WR1043ND на MikroTik RB951G-2HnD. Поизучав интернеты, наткнулся на презентацию от 2017 года на канале микротика в ютубе. Там описывалось, как не надо делать и как делать правильно. Возможно, для многих продвинутых пользователей MikroTik и RouterOS это не будет открытием, но надеюсь что поможет начинающим пользователям, как я, не заблудиться в дебрях вариантов, предлагаемых в интернете.

Начнем с часто предлагаемого варианта в интернете (так не надо делать!!!):

● /ip firewall layer7-protocol add name=youtube regexp="^.+(youtube).*$" add name=facebook regexp="^.+(facebook).*$" ● /ip firewall filter add action=drop chain=forward layer7-protocol=facebook add action=drop chain=forward layer7-protocol=youtube У данного решения следующие минусы: высокая нагрузка на cpu, увеличенная latency, потеря пакетов, youtube и facebook не блокируются.

Почему так происходит? Каждое соединение проверяется снова и снова, Layer7 проверяется не в том месте, что приводит к проверке всего трафика.

Правильное решение

Создаем правило с регулярным выражением для Layer7:● /ip firewall layer7-protocol add name=youtube regexp="^.+(youtube).*$"

Я блочил только ютуб, если нужен фейсбук или что-то иное, создает отдельные правила

add name=facebook regexp="^.+(facebook).*$" Можно создавать правила и для других сервисов стримминга видео, вот один из вариантов: regexp=”^.*youtube.com|youtu.be|netflix.com|vimeo.com|screen.yahoo.com|dailyMotion.com|hulu.com|twitch.tv|liveleak.com|vine.co|break.com|tv.com|metacafe.com|viewster.com).*$” Далее создаем правила для маркировки соединений и пакетов:● /ip firewall mangle add action=mark-connection chain=prerouting protocol=udp dst-port=53 connection-mark=no-mark layer7-protocol=youtube new-connection-mark=youtube_conn passthrough=yes add action=mark-packet chain=prerouting connection-mark=youtube_conn new-packet-mark=youtube_packet

и правила для фильтра файрвола:

● /ip firewall filter add action=drop chain=forward packet-mark=youtube_packet add action=drop chain=input packet-mark=youtube_packet

У меня в домашней сети по dhcp раздаются статические ip-адреса, поэтому фильтр я применял к ip-адресу смартфона ребенка, можно создать группу адресов и применить к ней. Идем в меню IP>Firewall>AddressList нажимаем кнопку Add, вводим название группы и не забываем заполнить список адресов для блокировки.

Далее идем меню IP>Firewall>Mangle выбираем наши mark_connection и mark_packet и в поле Src. Address вбиваем блокируемый ip либо группу.

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

Так же можно применять эти правила по расписанию.

Буду рад комментариями и поправкам, если вы заметите какие то неточности, т.к. это моя первая статья на Хабре. По материалам канала MikroTik на Youtube. Внимание, эта статья не о том как ограничить доступ ребенку в интернет, ограничение доступа в ютуб — это просто пример. Статья об одном из способов ограничения доступа к нежелательным ресурсам.

Updt1, от avelor, блок по mac:

● /ip firewall filter add chain=input src-mac-address=aa:bb:cc:dd:ee:ff action=drop add chain=forward src-mac-address=aa:bb:cc:dd:ee:ff action=drop можно заблочить и в dhcp — сделать lease и жмякнуть block access

habrahabr.ru

Как заблокировать сайты Вконтакте, Одноклассники и mail.ru на Mikrotik

Блокировка сайтов на MikroTik с помощью firewall Layer 7:

/ip firewall layer7-protocol add name=social regexp="^.*(get|GET).+(vk.com|odnoklassniki.com|ok.ru|my.mail.ru|facebook.com|twitter.com).*$" /ip firewall layer7-protocol add name=social regexp="(|`ok.ru`|odno(c|k)la(s|ss)niki|fall-in-love|loveplanet|my.mail.ru)" /ip firewall filter add chain=forward layer7-protocol=social action=drop

Блокировка сайтов на MikroTik с помощью DNS Layer 7:

Будем блокировать сайты на прикладном уровне модели OSI (Layer 7).

Всеми любимые социальные сети: вКонтакте, Одноклассники, Мой мир или любой другой сайт имеет смысл так блокировать, если Микротик является сервером, который обеспечивает выход в Интернет.Важное условие: Mikrotik должен выступать в роли DNS-сервера.

Минус у этого способа: если использовать любой другой DNS-сервер на компьютерах, то никакой блокировки не будет. Конечно Мы можем создать правило, которым заблокируем весь DNS-трафик, кроме как к нашему серверу.

Настройки статических DNS-записей в Mikrotik:

В консоле нам нужно набрать: /ip dns staticТак Мы перейдем в настройку DNS-сервера Микротика. Тут можно связать любое доменное имя с любым ИП-адрессом.

Mikrotik поддерживает регулярные выражения для записи доменного имени. Но это медленнее, поэтому старайтесь не злоупотреблять. Для таких записей устанавливается флаг «R» (для PTR-записей нельзя использовать регулярные выражения). Для регулярных выражений точка заменяет любой символ.

Примеры:
1.Давайте сайту "www.vk.com" назначим ип-адресс 127.0.0.1, что сделает его полностью неработоспособным: [[email protected]] ip dns static> add name www.vk.com address=127.0.0.1 [[email protected]] ip dns static> print Flags: D - dynamic, X - disabled, R - regexp # NAME ADDRESS TTL 0 www.vk.com 127.0.0.1 1d 2."Заблокируем" некоторые социальные сети: [[email protected]] ip dns static> add name name=".*\.vk\.com" address=127.0.0.1 [[email protected]] ip dns static> add name name=".*\.vkontakte\.com" address=127.0.0.1 [[email protected]] ip dns static> add name name=".*\.odnoklassniki\.ru" address=127.0.0.1 [[email protected]] ip dns static> add name name=".*\.my\.mail\.ru" address=127.0.0.1

Блокировка сайтов с помощью Firewall на MikroTik:

Будем блокировать сайты на сетевом уровне модели OSI (Layer 3).

Итак нам понадобятся IP-адреса, которые нужно блокировать.

Например:

>nslookup vk.com Name: vk.com Addresses:87.240.131.104 87.240.143.245 87.240.143.246 87.240.143.247 87.240.143.248 87.240.188.248 87.240.188.253 93.186.224.244 93.186.224.245 87.240.131.101 87.240.131.102 87.240.131.103

Теперь можно заблокировать все эти IP-адреса. Можно даже всю сеть (87.240.128.0/18) заблокировать:

inetnum: 87.240.128.0 - 87.240.159.255 netname: VKONTAKTE-SPB-NET descr: Vkontakte Ltd country: RU admin-c: PVD90-RIPE tech-c: PVD90-RIPE status: ASSIGNED PA mnt-by: VKONTAKTE-NET-MNT source: RIPE # Filtered

Блокировка в Firewall:

/ ip firewall filter add chain=forward src-address-list=socialnetworks action=drop comment="Social Network" disabled=no   /ip firewall address-list add list=socialnetworks address=87.240.143.247 disabled=no /ip firewall address-list add list=socialnetworks address=87.240.143.248 disabled=no /ip firewall address-list add list=socialnetworks address=87.240.188.248 disabled=no /ip firewall address-list add list=socialnetworks address=87.240.188.253 disabled=no /ip firewall address-list add list=socialnetworks address=93.186.224.244 disabled=no /ip firewall address-list add list=socialnetworks address=93.186.224.245 disabled=no /ip firewall address-list add list=socialnetworks address=87.240.131.101 disabled=no /ip firewall address-list add list=socialnetworks address=87.240.131.102 disabled=no /ip firewall address-list add list=socialnetworks address=87.240.131.103 disabled=no /ip firewall address-list add list=socialnetworks address=87.240.131.104 disabled=no /ip firewall address-list add list=socialnetworks address=87.240.143.245 disabled=no /ip firewall address-list add list=socialnetworks address=87.240.143.246 disabled=no

Еще несколько вариантов блоков:

ВКонтакте:

/ip firewall address-list add list=vk address=87.240.128.0/18 /ip firewall address-list add list=vk address=93.186.224.0/20 /ip firewall address-list add list=vk address=95.142.192.0/20 /ip firewall address-list add list=vk address=95.213.0.0/17 /ip firewall address-list add list=vk address=185.32.248.0/22

Mail.ru:

/ip firewall address-list add list=mailru address=5.61.16.0/21 /ip firewall address-list add list=mailru address=5.61.232.0/21 /ip firewall address-list add list=mailru address=79.137.157.0/24 /ip firewall address-list add list=mailru address=79.137.183.0/24 /ip firewall address-list add list=mailru address=94.100.176.0/20 /ip firewall address-list add list=mailru address=95.163.32.0/19 /ip firewall address-list add list=mailru address=128.140.168.0/21 /ip firewall address-list add list=mailru address=178.22.88.0/21 /ip firewall address-list add list=mailru address=178.237.16.0/20 /ip firewall address-list add list=mailru address=185.5.136.0/22 /ip firewall address-list add list=mailru address=185.6.247.0/24 /ip firewall address-list add list=mailru address=185.16.244.0/22 /ip firewall address-list add list=mailru address=188.93.56.0/21 /ip firewall address-list add list=mailru address=194.186.63.0/24 /ip firewall address-list add list=mailru address=195.211.20.0/22 /ip firewall address-list add list=mailru address=195.218.168.0/24 /ip firewall address-list add list=mailru address=195.218.190.0/23 /ip firewall address-list add list=mailru address=217.20.144.0/20 /ip firewall address-list add list=mailru address=217.69.128.0/20

Одноклассники:

/ip firewall address-list add list=ok address=5.61.16.0/21 /ip firewall address-list add list=ok address=5.61.232.0/21 /ip firewall address-list add list=ok address=79.137.157.0/24 /ip firewall address-list add list=ok address=79.137.183.0/24 /ip firewall address-list add list=ok address=94.100.176.0/20 /ip firewall address-list add list=ok address=95.163.32.0/19 /ip firewall address-list add list=ok address=128.140.168.0/21 /ip firewall address-list add list=ok address=178.22.88.0/21 /ip firewall address-list add list=ok address=178.237.16.0/20 /ip firewall address-list add list=ok address=185.5.136.0/22 /ip firewall address-list add list=ok address=185.6.247.0/24 /ip firewall address-list add list=ok address=185.16.244.0/22 /ip firewall address-list add list=ok address=188.93.56.0/21 /ip firewall address-list add list=ok address=194.186.63.0/24 /ip firewall address-list add list=ok address=195.211.20.0/22 /ip firewall address-list add list=ok address=195.218.168.0/24 /ip firewall address-list add list=ok address=195.218.190.0/23 /ip firewall address-list add list=ok address=217.20.144.0/20 /ip firewall address-list add list=ok address=217.69.128.0/20

Yandex:

/ip firewall address-list add list=yandex address=5.45.192.0/18 /ip firewall address-list add list=yandex address=5.255.192.0/18 /ip firewall address-list add list=yandex address=37.9.64.0/18 /ip firewall address-list add list=yandex address=37.140.128.0/18 /ip firewall address-list add list=yandex address=77.88.0.0/18 /ip firewall address-list add list=yandex address=84.201.128.0/18 /ip firewall address-list add list=yandex address=87.250.224.0/19 /ip firewall address-list add list=yandex address=93.158.128.0/18 /ip firewall address-list add list=yandex address=95.108.128.0/17 /ip firewall address-list add list=yandex address=100.43.64.0/19 /ip firewall address-list add list=yandex address=130.193.32.0/19 /ip firewall address-list add list=yandex address=141.8.128.0/18 /ip firewall address-list add list=yandex address=178.154.128.0/17 /ip firewall address-list add list=yandex address=199.21.96.0/22 /ip firewall address-list add list=yandex address=199.36.240.0/22 /ip firewall address-list add list=yandex address=213.180.192.0/19

Вконтакте

Facebook

Twitter

Google+

LiveJournal

LinkedIn

Одноклассники

E-mail

Pinterest

Мой мир

disnetern.ru

блокирование сайтов и проброс портов с помощью роутера — asp24.ru

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

В 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.

Узнать IP-адрес сайта

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

откройте меню New Terminal и выполните команду-аналог put

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

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

 

поиск IP-адресов

После того, как мы узнали нужные нам 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 адресами серверов. Продвинутые пользователи обходят ограничения еще с помощью сайтов анонимайзеров. Поэтому блокируя доступ к социальным сетям, вам также придется выискивать сайты анонимайзеры и тоже их блокировать.

Блокирование сайтов с помощью статических 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 запросы будут идти через наш роутер.

перейдите в меню IP - Firewal

Блокирование сайтов с помощью 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

Проброс портов в роутере MikroTik

Проброс портов в роутере MikroTik (port forwarding) позволяет организовать удаленный доступ из интернета к какому-нибудь устройству внутри вашей локальной сети (к IP-камере, Web, FTP или игровому серверу).

Ваш роутер обязательно должен иметь белый IP-адрес, по которому к нему можно подключиться из интернета. В роутере MikroTik проверить белый ли у вас IP-адрес можно следующим образом:

  1. Откройте меню IP - Cloud
  2. Поставьте галочку DDNS Enabled
  3. Нажмите кнопку Apply
  4. Если после этого отобразиться статус "updated" без ошибок, то у вас белый IP-адрес.

Откройте меню IP - Cloud

Если в правом нижнем углу отображается ошибка типа "DDNS server received request from IP 67.170.73.47 but your local IP was 104.12.152.1; DDNS service might not work.", то у вас серый IP-адрес. В этом случае вам нужно обратиться к провайдеру для получения белого IP-адреса. У некоторых провайдеров это платная услуга.

имеется роутер MikroTik с белым IP-адресом

Итак, у нас имеется роутер MikroTik с белым IP-адресом 178.189.224.122. Он имеет внутреннюю подсеть 192.168.88.0/24.

Внутри подсети есть IP-камера с адресом 192.168.88.250, у которой есть Web-интерфейс, работающий на 80 порту. Нам нужно обеспечить доступ из интернета к Web-интерфейсу IP-камеры.

Схема сети

Необходимо сделать так, чтобы при открытии в браузере адреса http://178.189.224.122:10000, мы попадали на Web-интерфейс IP-камеры.

10000 в адресной строке - это произвольный номер порта. Его желательно указывать в диапазоне от 49152 до 65535. Можно также использовать диапазон от 1024 до 49151, если вы уверены, что указанный порт не будет конфликтовать с какой-то программой.

Для проброса портов в роутере MikroTik откройте меню New Terminal и выполните команды, описанные ниже:

откройте меню New Terminal

Первым делом добавляем правило маскарадинга для подсети 192.168.88.0/24

/ip firewall nat add action=masquerade chain=srcnat src-address=192.168.88.0/24

Далее обращения из интернета к порту 10000, перенаправляем во внутреннюю сеть на устройство 192.168.88.250 и порт 80.

/ip firewall nat add action=netmap chain=dstnat dst-port=10000 in-interface=ether1 protocol=tcp to-addresses=192.168.88.250 to-ports=80

Обращения из локальной сети к внешнему IP-адресу 178.189.224.122 и порту 10000 перенаправляем в локальную сеть на устройство 192.168.88.250 и порт 80, а не в Интернет.

/ip firewall nat add action=netmap chain=dstnat dst-address=178.189.224.122 dst-port=10000 in-interface=bridge protocol=tcp src-address=192.168.88.0/24 to-addresses=192.168.88.250 to-ports=80

Созданные правила можно посмотреть в меню IP - Firewall на вкладке NAT.

в меню IP - Firewall на вкладке NAT

Теперь открываем в браузере адрес http://178.189.224.122:10000. Появляется окно с вводом пароля.

открываем в браузере

Вводим логин, пароль и попадаем на Web-страничку с видео и настройками IP-камеры.

попадаем на Web-страничку

Я еще захотел просматривать видео на планшете в полноэкранном режиме без использования Web-интерфейса. В этом поможет программа VLC media player. Она может отображать видеопоток по протоколу RTSP, который поддерживает моя камера TP-Link. Протокол RTSP использует порт 554, поэтому его нужно пробросить в роутере MikroTik.

Обращения из интернета к порту 554, перенаправляем во внутреннюю сеть на устройство 192.168.88.250 и порт 554.

/ip firewall nat add action=netmap chain=dstnat dst-port=554 in-interface=ether1 protocol=tcp to-addresses=192.168.88.250 to-ports=554

Обращения из локальной сети к внешнему IP-адресу 178.189.224.122 и порту 554 перенаправляем в локальную сеть на устройство 192.168.88.250 и порт 554, а не в интернет.

/ip firewall nat add action=netmap chain=dstnat dst-address=178.189.224.122 dst-port=554 in-interface=bridge protocol=tcp src-address=192.168.88.0/24 to-addresses=192.168.88.250 to-ports=554

Теперь запускаем на планшете программу VLC media player и выбираем открыть Сетевой ресурс. В ОС Windows в VLC media player нужно открыть меню Медиа - Открыть URL.

Медиа - Открыть URL

Вводим адрес rtsp://login:[email protected]/video.mp4

, где login - логин для доступа к IP-камере, passwd - пароль для доступа к IP-камере, 178.189.224.122 - внешний IP-адрес роутера.

Строка RTSP запроса для вашей модели камеры может отличаться. Поэтому уточните на сайте производителя или в документации к камере, как она правильно прописывается. Также удостоверьтесь, что ваша камера поддерживает протокол RTSP и он включен в настройках.

Строка RTSP запроса для вашей модели камеры

Далее нажмите Открыть сетевой ресурс. В нижней части появится миниатюра видео с камеры. Нажмите на нее.

Открыть сетевой ресурс

После этого видео на планшете откроется в полноэкранном режиме.

видео на планшете откроется в полноэкранном режиме

Источник: "Блокирование сайтов в роутере MikroTik" и "Проброс портов в роутере MikroTik"

asp24.ru

Блокирование сайтов в роутере MikroTik - Сетевое оборудование - FAQStorage.ru

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

 

 

Блокирование сайтов с помощью статических 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 сервера, то ограничение работать не будет. Поэтому блокировку сайтов лучше делать с помощью Firewall.

 

 

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

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

1.png

 

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

3.png

 

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

5.jpg

 

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

4.png

 

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

/ip firewall filter add chain=forward src-address-list=blockedsites action=drop comment="Blocked Sites" disabled=no

/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 адресами серверов. Продвинутые пользователи обходят ограничения еще с помощью сайтов анонимайзеров. Поэтому блокируя доступ к социальным сетям, вам также придется выискивать сайты анонимайзеры и тоже их блокировать.

 

 

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

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

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

/ip proxyset enabled=yesset src-address=0.0.0.0set port=8080set parent-proxy=0.0.0.0set parent-proxy-port=0set cache-administrator="webmaster"set max-cache-size=noneset cache-on-disk=noset max-client-connections=600set max-server-connections=600set max-fresh-time=3dset always-from-cache=noset cache-hit-dscp=4set 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

faqstorage.ru


Смотрите также