@rundom49

Как на Microtik RB951G ограничить доступ на все сайты, кроме определенного списка?

Стоит железка Microtik RB951G.
Задача - открыть доступ к определенному списку сайтов, все остальное заблокировать.
Каким образом это реализовать средствами RouterOS ?
  • Вопрос задан
  • 4291 просмотр
Пригласить эксперта
Ответы на вопрос 5
chumayu
@chumayu
Если в башне по*бень. То что еб*нь, что не еб*нь.
Ну думаю вариантов масса, но я бы сделал так:

1.Отменил правило основной маршрутизации на микротике (т.е. правило 0.0.0.0/0 выключить)
2.Прописать только те маршруты которые вам нужны.

Способ в принципе корявый но работает.
Ответ написан
Комментировать
kalduntus
@kalduntus
system administrator
Хм, в фарвол добавить правило запрета нат/или запрета out для списка адресов например allow-sites c меткой ! (кроме) и все.
в список добавлять разрешенные, нагрузки на проц нет, все работает? но добалять только ip

ну или юзать список запрещенных, но это сложнее, плюс рутинной работы будет много. ну или юзать layer 7, и игратся, микротик может все
Ответ написан
@paxlo
Например так:

/ip firewall layer7-protocol
add name=ya regexp="^.*(ya.ru|yandex.ru).*\$"
add name=all-websites regexp="^.+(.).*\$"
/ip firewall filter
add chain=forward dst-port=80,443 layer7-protocol=ya protocol=tcp
add action=reject chain=forward dst-port=80,443 layer7-protocol=all-websites protocol=tcp reject-with=tcp-reset


Обратите внимание на положение этих правил в общей цепочке правил. Т.е. эти запрещающие правила должны следовать ПЕРЕД разрешающими. Юзайте place-before.
Ответ написан
Комментировать
@shaazz
Как известно, список Firewall обрабатывается сверху вниз. Поэтому, для нужной сети добавляем сверху построчно accept для всех сайтов из белого списка (content="site_from_white_list.com") и, в конце этого перечня, для всего остального tcp 80,443 action=reject reject-with=tcp-reset
Правда через winbox неудобно просматривать такой список.
Ответ написан
Комментировать
@moneron89
Сертифицированный тренер Mikrotik
А почему не использовать прозрачный прокси (самый простой способ). А второй не сильно сложнее - создать список в address list с ip разрешённых сайтов, а в файерволле добавить /ip firewall filter add chain=forward dst-address-list=!allowed action=drop и задрать его повыше. И файерволл читать удобнее будет, и нагрузка на проц почти не возрастёт (не будет гнать пакет по всем правилам на предмет совпадения dst-ip), а комменты везде подписать можно.
А ещё бесподобный скриптинг в микротике позволяет сделать всё то, что в РОС реализуется с трудом. Например: habrahabr.ru/post/242143/. Возьмите за основу, допилите под себя.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы