Фильтрация HTTPS трафика в сети

Тема в разделе "Общие вопросы", создана пользователем Bansardo, 29 сен 2017.

  1. Bansardo

    Bansardo Участник

    Здравтсвуйте,
    Прочитал кучу форумов и не могу найти ответ: может ли это микротик или не может?
    Стоит задача запрета сайтов по 443 порту. http://youtube.com запрещен, хитрый сотрудник пишет https:// и все хорошо. Как отфильтровать, увидеть через netflow, например, и запретить доступ?
     
  2. Kato

    Kato Участник

    используйте L7
     
  3. Мышаня

    Мышаня Участник

    /system script
    add name=Add_to_block owner=admin policy=ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon source=":foreach i in=[/ip dns cache all find where (name~\"facebook\" || name~\"ok\" || name~\"odnokl\" || \
    name~\"instagram.com\" || name~\"myspace\" || name~\"myspace.com\" || name~\"my.mail\" || name~\"vkrugudruzei\" || name~\"mirtesen\" || name~\"torrent\" || name~\"tracker\") && (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 comment=\$cacheName;\r\
    \n}\r\
    \n}"

    По вышеприведённому создаётся список ip адресов (пользователи сами его наполняют).

    /ip firewall address-list
    add address=193.0.170.53 comment=ok-bar.love.mail.ru list=blockSS
    add address=193.0.170.54 comment=ok-bar.love.mail.ru list=blockSS
    add address=31.13.93.36 comment=star-mini.c10r.facebook.com list=blockSS
    add address=31.13.92.36 comment=star-mini.c10r.facebook.com list=blockSS
    add address=31.13.93.10 comment=atlas.c10r.facebook.com list=blockSS
    add address=5.61.23.5 comment=ok.ru list=blockSS
    add address=217.20.155.58 comment=ok.ru list=blockSS
    add address=217.20.156.159 comment=ok.ru list=blockSS
    add address=31.13.92.2 comment=atlas.c10r.facebook.com list=blockSS
    add address=31.13.93.52 comment=instagram.c10r.facebook.com list=blockSS
    add address=95.131.27.119 comment=mirtesen.ru list=blockSS
    add address=95.131.27.118 comment=mirtesen.ru list=blockSS
    add address=63.135.90.70 comment=myspace.com list=blockSS
    add address=217.197.115.136 comment=vkrugudruzei.ru list=blockSS
    add address=217.197.115.133 comment=vkrugudruzei.ru list=blockSS
    add address=217.197.115.132 comment=vkrugudruzei.ru list=blockSS

    А правило блокирует
    /ip firewall filter
    add action=drop chain=forward comment="Block list" dst-address-list=blockSS protocol=tcp

    Тут надо написать "youtube" вместо моих одноглазников и прочих
     
    Денис Друженков нравится это.
  4. Bansardo

    Bansardo Участник

    создал скрипт, скопировал, а у меня в сети AD. соответственно он используется ка кглавный DNS и в кеше на микротике пусто.

    Содержательно КЭП. HTTP я умею по прокси срезать, как https резать?
     
    Последнее редактирование: 2 окт 2017
  5. Мышаня

    Мышаня Участник

    в смысле как вписать??? Winbox - new terminal если командами, если windows way, то Winbox - там кнопка script, там плюсик и текст скрипта туда, только не забудь указать, что ютуб блочишь
    upload_2017-10-2_13-25-0.png

    Потом IP - Firewall - Filter и так же плюсиком
    upload_2017-10-2_13-26-33.png

    Текст скрипта будет такой, для ютуба
    :foreach i in=[/ip dns cache all find where (name~"youtube") && (type="A") ] do={
    :local tmpAddress [/ip dns cache get $i address];
    delay delay-time=10ms
    #prevent script from using all cpu time
    :if ( [/ip firewall address-list find where address=$tmpAddress] = "") do={
    :local cacheName [/ip dns cache get $i name] ;
    :log info ("added entry: $cacheName $tmpAddress");
     
  6. Bansardo

    Bansardo Участник

    Как быть с DNS? Я написал выше, что у меня AD и он первый стоит в списке DNS. В кеше микротика пусто...
     
  7. Мышаня

    Мышаня Участник

    как работает это дело: юзер идёт на тытрубу, микрот видит в заголовке "youtube", определяет ip по которому yоutube.com сейчас и вносит этот ip в блоклист. Всё.

    Про ДНС отдельный, я ничего не писал.
     
  8. Bansardo

    Bansardo Участник

    создал скрипт, жму ран скрипт, в кеше есть записи теперь, надо было галку поставить allow remote requests
    Ничего не происходит. листы не создаются

    UPDATE
    чтото создал, я 2 скрипта добавил в лист первый и второй. Правильно?
     
  9. Мышаня

    Мышаня Участник

    первый это какой? Для ютуба тот, где ютуб. Вон он на картинке.
     
  10. Bansardo

    Bansardo Участник

    а для соцсетей который выше? Он сам теперь будет запускаться? или надо руками каждый раз пускать?
    Где почитать как запускать скрипты и прочее?
    в ноябре собираюсь на MTCNA и MTCRE учиться, перелез 2 дня назад с freebsd на mikrotik
     
  11. Мышаня

    Мышаня Участник

    Тут не фря, тут линукс ;-) Но скриптописание аналогично.
    Первый скрипт - да, для некоторых соцсетей. Выдрал просто из рабочего микрота.
    О! Смотрю при копипасте поговнялся скрипт слегка, надо сделать как на скриншоте.
     
    a9265211819 нравится это.
  12. Bansardo

    Bansardo Участник

    уже попроавил. микротики классная штука!
    как он запускается? сам али его надо руками?
    я в первый скрипт имя воткнул youtube
     
  13. Kato

    Kato Участник

    так я и написал, используйте L7
     
  14. Bansardo

    Bansardo Участник

    Https через l7?! Нука правило фильтра в студию.
    Человек выше предложил реально работающее решение. А Вы написали аналог такого: бегает человек по незнакомому городу и спрашивает где ему купить такойто товар, а прохожий ему говорит: в магазине... А человек типа думал что товары покупают в школе чтоли? Он и так знает что в магазине... Я задал вопрос про https а не про http.
    Опять же, жду конкретного правила. Иначе это просто разговор неочем...
     

  15. https://spw.ru/forum/threads/kak-sozdat-belyj-spisok-sajtov.256/ - выдержка из темы как правильно пользоваться Layer7 Ильи Князева, будет работать и для https

    ОК. Уговорили. Блокируем rambler и avito.
    1. Создаем L7 фильтр.
    Код:
    /ip firewall layer7-protocol
    add name=Block-URL regexp="^.+(rambler|avito).*\$"

    Далее мы не хотим проверять каждый пакет, потому что это вызывает дополнительную нагрузку на CPU. Значит метим соединение и потом блокируем соединение в файрволе.
    Следующее правило говорит "если соединение ранее не помечено, то проверяем его на L7"
    Если L7 сработал, вешаем метку Block-URL
    Если не сработал, вешаем метку Other
    Код:
    /ip firewall mangle
    add action=mark-connection chain=prerouting connection-mark=no-mark \
    layer7-protocol=Block-URL new-connection-mark=Block-URL
    add action=mark-connection chain=prerouting connection-mark=no-mark \
    new-connection-mark=Other

    Ну а теперь в файрволе блокируем соединения с меткой Block-Url
    Код:
    /ip firewall filter
    add action=drop chain=forward connection-mark=Block-URL

    Примечание.
    Формально можно без маркировки обойтись, но это будет дороже по процессору. Тогда убираем маркировку в mangle, а фильтр переделываем на
    Код:
    /ip firewall filter
    add action=drop chain=forward layer7-protocol=Block-URL
     
    a9265211819 нравится это.
  16. Мышаня

    Мышаня Участник

    Что-то не вышло у меня с L7 для https. Попробую и так. Есть задача, как раз
     
  17. trouble shooting достаточно сложный, сам 20 мин. налаживал.
    1. Настраиваем правило на микротик.
    2. Включаем его
    3. Закрываем все открытые страницы, отключаем сетевой интерфейс компа чистим DNS кэш на компьютера,
    4. Чистим коннекшен трекер, а лучше ребутем микрот.
    5. Работает.
     
  18. Мышаня

    Мышаня Участник

    Спасибо, попробую. Потом отпишу по результатам.
     
  19. Bansardo

    Bansardo Участник

    Выше способ по L7 не работает для HTTPS
     
  20. Все работает. Сложный trouble shooting просто.
     

    Вложения:

    a9265211819 нравится это.