The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
Почему SQUID не блокирует http сайты? Где накосячил?, !*! borisdenis, 11-Окт-18, 11:31  [смотреть все]
Есть сервер squid 3.5.28, все работает кроме одного, не блокирует сайты заданные в файле (/opt/squid/etc/blocked_reklama) при доступе к ним по http протоколу, а вот при доступе через https прекрасно блокирует. Не могу понять такого поведения, где и что исправить?

Содержимое файла /opt/squid/etc/blocked_reklama
www.mult.ru
www.securitylab.ru


Конфиг:
#Для авторизации через AD
auth_param negotiate program /opt/squid/libexec/negotiate_kerberos_auth -s HTTP/xxx.xx.xx
auth_param negotiate children 40 startup=0 idle=1
auth_param negotiate keep_alive on

acl localnet src 10.16.0.0/16 # RFC1918 possible internal network
acl pcname srcdomain "/opt/squid/etc/block_comp_name" # компьютеров из имен компьютеров в файле block_comp_name
acl nohttps dstdomain "/opt/squid/etc/no_https"
acl blocked_ads dstdomain "/opt/squid/etc/blocked_reklama" # сайтов для блокировки (реклама)

acl userauth proxy_auth REQUIRED # аутентифицированный пользователь попадает в группу userauth

acl SSL_ports port 443
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl CONNECT method CONNECT
acl manager proto cache_object


http_access deny pcname #запрещаем доступ группе pcname
http_access deny blocked_ads #Запрещаем доступ к сайтам из указанных списков
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localhost manager
http_access deny manager
http_access allow userauth #Разрешаем интернет аутентифицированным пользователям
http_access allow localnet #Разрешаем интернет из нашей сети
http_access allow localhost #Разрешаем интернет локально
http_access deny all #Запрещаем все остальное


#################################################################################################################################
#Для http прозрачного прокси
http_port 3129 intercept
#Для https без подмены сертификата
#https_port 3130 intercept
https_port 3130 intercept ssl-bump options=ALL:NO_SSLv3:NO_SSLv2 connection-auth=off cert=/opt/squid/etc/squidCA.pem
always_direct allow all
acl blocked_ads_ssl ssl::server_name "/opt/squid/etc/blocked_reklama" # сайтов для блокировки (реклама и т.п.)
acl step1 at_step SslBump1
ssl_bump peek step1
ssl_bump terminate blocked_ads_ssl #Закрываем соединение на сайт
ssl_bump bump userauth !nohttps #Расшифровываем трафик для пользователей группы userauth кроме сайтов из файла no_https
ssl_bump splice all #Без расшифровки для всех остальных

#################################################################################################################################
http_port 3128 ssl-bump options=ALL:NO_SSLv3:NO_SSLv2 generate-host-certificates=on dynamic_cert_mem_cache_size=4MB cert=/opt/squid/etc/adkey.pem
sslcrtd_program /opt/squid/libexec/ssl_crtd -s /opt/squid/var/squid3_ssldb -M 4MB
sslcrtd_children 10

always_direct allow all # не использовать кэш

sslproxy_cert_error allow all #разрешает обрабатывать запрос при ошибке проверки сертификата веб сайта
sslproxy_flags DONT_VERIFY_PEER #отключает проверку по списку СА по умолчанию и принимает сертификат, издатель которых неизвестен

ssl_bump server-first all #режим для установки соединения сначала с веб-сервером, затем SSL-соединение с клиентом

coredump_dir /opt/squid/var/cache/squid

#
# Add any of your own refresh_pattern entries above these.
#
refresh_pattern ^ftp:        1440    20%    10080
refresh_pattern ^gopher:    1440    0%    1440
refresh_pattern -i (/cgi-bin/|\?) 0    0%    0
refresh_pattern .        0    20%    4320


max_filedescriptors 4096
cache_replacement_policy GDSF
persistent_connection_after_error off #после возникновения HTTP ошибки, Squid перестанет использовать persistent соединение с этим клиентом

icap_enable on
icap_send_client_ip on
icap_send_client_username on
icap_client_username_encode off
icap_client_username_header X-Authenticated-User
icap_preview_enable on
icap_preview_size 1024
#icap_service_failure_limit 10 in 5 seconds #После 10 ошибок в течении 5 секунд приостанавливается использование icap
icap_service service_avi_req reqmod_precache icap://127.0.0.1:1344/virus_scan bypass=on
adaptation_access service_avi_req allow all
icap_service service_avi_resp respmod_precache icap://127.0.0.1:1344/virus_scan bypass=on
adaptation_access service_avi_resp allow all

logfile_rotate 0


При таком конфиге доступ на https://www.securitylab.ru закрыт, а на www.mult.ru прекрасно заходит, сайты указаны просто для теста, потом будут заменены на другие. squidguard использовать не предлагать, должно же и так работать. Что я пропустил?

squid -v
Squid Cache: Version 3.5.28
Service Name: squid

This binary uses OpenSSL 1.0.2n  7 Dec 2017. For legal restrictions on distribution see https://www.openssl.org/source/license.html

configure options:  '--prefix=/opt/squid' '--with-large-files' '--enable-ssl' '--enable-ssl-crtd' '--enable-ltdl-convenienc' '--enable-auth-negotiate=kerberos,wrapper' '--enable-icap-client' '--with-openssl=/opt/openssl-1.0.2p' '--enable-http-violations' --enable-ltdl-convenience

  • Почему SQUID не блокирует http сайты? Где накосячил?, !*! Аноним, 14:28 , 11-Окт-18 (1)
    Конфиг по кускам подергал с разных хау-ту, что ли?

    Выкинь из конфигурации все про прозрачный прокси. Не получится у тебя пока по-человечески скрестить ежа с ужом. Бампинг в 3.5 тоже через задницу работает. Так что оставь только http_port 3128, или переходи на 4 сквид, но там сейчас других косяков хватает.

    И вместо
    www.mult.ru
    www.securitylab.ru

    пиши
    .mult.ru
    .securitylab.ru

    т.е. домен со всеми поддоменами.


    • Почему SQUID не блокирует http сайты? Где накосячил?, !*! borisdenis, 14:57 , 11-Окт-18 (2)
      Нельзя выдергивать прозрачный прокси, так как через него ходят в инет все, кроме членов домена. Получается кто в домене у того указан прокси в настройках и они успешно авторизуются, идут через прокси с расшифровкой https, а все остальные без указания прокси в браузере и идут через прозрачный прокси, так что надо оба варианта. Да и та часть что с бампингом работает идеально, https прекрасно фильтруется в любом типе подключения, а вот банальный http никак не хочет...

      >[оверквотинг удален]
      > по-человечески скрестить ежа с ужом. Бампинг в 3.5 тоже через задницу
      > работает. Так что оставь только http_port 3128, или переходи на 4
      > сквид, но там сейчас других косяков хватает.
      > И вместо
      > www.mult.ru
      > www.securitylab.ru
      > пиши
      > .mult.ru
      > .securitylab.ru
      > т.е. домен со всеми поддоменами.

  • Почему SQUID не блокирует http сайты? Где накосячил?, !*! borisdenis, 12:50 , 15-Окт-18 (3)
    Вопрос снят, пересобрал squid еще раз с теми же параметрами и все заработало... Чудеса...


    >[оверквотинг удален]
    > squidguard использовать не предлагать, должно же и так работать. Что я
    > пропустил?
    > squid -v
    > Squid Cache: Version 3.5.28
    > Service Name: squid
    > This binary uses OpenSSL 1.0.2n  7 Dec 2017. For legal restrictions
    > on distribution see https://www.openssl.org/source/license.html
    > configure options:  '--prefix=/opt/squid' '--with-large-files' '--enable-ssl' '--enable-ssl-crtd'
    > '--enable-ltdl-convenienc' '--enable-auth-negotiate=kerberos,wrapper' '--enable-icap-client'
    > '--with-openssl=/opt/openssl-1.0.2p' '--enable-http-violations' --enable-ltdl-convenience




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру