mausspb
@mausspb
web разработчик, системный администратор

Как запретить посещение некоторых сайтов по https в Routeros?

Сейчас блокируется все на 80 порту ля списка ip адресов(в локальной сети) , так же есть редирект для этого же списка на proxy , где так же режутся определенные сайты. Но если в редирект на proxy добавить 443 порт ( для нашего списка ip ), то режутся все https . Я так понял , что это связано с тем, что нельзя посмотреть зашифрованный траффик и отличить разрешенный url от запрещенного.
Есть ли способы фильтрации 443 на mokrotik Router OS ?
  • Вопрос задан
  • 6586 просмотров
Решения вопроса 1
@efkot
нет зашифрованный трафик вы не отсечете ни проксём ни лаер7
только в бан по ипам

я вот так баню
ip firewall layer7-protocol add name=block_site regexp="^.*(get|GET).+(odno(c|k)la(s|ss)niki|vk.com|ok.ru|vk.me).*\$"

для https всё сложней
system scheduler add interval=10m name=schedule on-event=script1 policy=ftp,reboot,read,write,policy,test,password,sniff,sensitive

/system script
add name=script1 policy=ftp,reboot,read,write,policy,test,password,sensitive \
    source=":foreach i in=[/ip dns cache all find where (name~\"odnokl\" || na\
    me~\"vk.com\" || name~\"vk.me\") && (type=\"A\") ] do={\r\
    \n:local tmpAddress [/ip dns cache get \$i address];\r\
    \ndelay delay-time=10ms\r\
    \n#prevent script from using all cpu time\r\
    \n:if ( [/ip firewall address-list find where address=\$tmpAddress] = \"\"\
    ) do={ \r\
    \n:local cacheName [/ip dns cache get \$i name] ;\r\
    \n:log info (\"added entry: \$cacheName \$tmpAddress\");\r\
    \n/ip firewall address-list add address=\$tmpAddress list=blockSS timeout=\
    12:00:00 comment=\$cacheName;\r\
    \n}\r\
    \n}"

ip firewall filter add action=reject chain=forward dst-address-list=blockSS in-interface="eth 1" protocol=tcp reject-with=tcp-reset
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
xnscripter
@xnscripter
Поднимаю тему.
В RouterOS v6.48.3 поменялся синтаксис, работать будет так:

/system script add name=script_block policy=ftp,reboot,read,write,policy,test,password,sensitive source="
:foreach addr in=[/ip dns cache all find where (name~"vk.com" || name~"userapi.com" || name~"twitch.tv") && (type="A")] do={
  :local tmpAddress [/ip dns cache get $addr data];
  :delay 300ms;
  :if ([/ip firewall address-list find where address=$tmpAddress] = "") do={
    :local cacheName [/ip dns cache get $addr name];
    :log info "added entry: $cacheName $tmpAddress";
    /ip firewall address-list add address=$tmpAddress list=block timeout=24h comment=$cacheName;
  }
};"

/system scheduler add interval=10m name=schedule_block-sites on-event=script_block policy=ftp,reboot,read,write,policy,test,password,sniff,sensitive

/ip firewall filter add action=reject chain=forward dst-address-list=block protocol=tcp reject-with=tcp-reset

В firewall filter - Src. Address List можно добавить название списка пользователей со статикой,
кому будем блокировать доступ.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
28 мар. 2024, в 20:46
150000 руб./за проект
28 мар. 2024, в 20:37
50000 руб./за проект
28 мар. 2024, в 20:34
1500 руб./за проект