Назад | Перейти на главную страницу

squid Доступ запрещен. для http, но не https, несмотря на удаление http_access deny CONNECT! SSL_ports

У меня есть следующий конфигурационный файл. Удалены комментарии и пустые строки. Линии начинаются #> это те, которые я удалил, чтобы заставить нормальный http работать. Но он все еще заблокирован.

acl localnet src 172.16.0.0/12 #docker
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
#>http_access deny !Safe_ports
#>http_access deny CONNECT !SSL_ports
http_access allow localhost manager
#>http_access deny manager
http_access allow localnet
http_access allow localhost
#>http_access deny all
http_port 3128
cache_dir aufs  /media/richard/extra2/squid-cache 20000 16 256
coredump_dir /var/spool/squid
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

https работает, если я подключаюсь к 127.0.0.1; https работает даже при отключении.

https не работает при подключении к 172.16.0.1, той же машине на интерфейсе докера.

Как заставить кальмара использовать прокси-сервер http?

я добавил debug_options ALL,1 33,2 в верхнюю часть файла конфигурации, затем нашел это в журналах:

local=172.17.0.1:3128 remote=192.168.43.64

Похоже, он определяет удаленный как мой IP-адрес на внешнем интерфейсе. Затем я добавил

acl localnet src 192.168.0.0/16 # RFC1918 possible internal network

в конфиг, и он работает. Обратите внимание, что это проблема безопасности, так как теперь мы разрешаем подключения из этой сети.

Я понятия не имею, почему удаленный IP-адрес не из той же сети. Я не имею понятия почему https работал. Я буду использовать свой локальный брандмауэр, но мне все равно нужно исправить (на случай, если брандмауэр неправильно настроен).