Squid leitet SSL nicht als HTTP um

Squid leitet SSL nicht als HTTP um

Ich möchte, dass mein gesamter Datenverkehr zu einer bestimmten Domäne über einen übergeordneten Proxy gesendet wird. Hier ist meine Squid-Konfiguration:

acl localnet src 10.0.0.0/8     # RFC1918 possible internal network
acl localnet src 172.16.0.0/12  # RFC1918 possible internal network
acl localnet src 192.168.0.0/16 # RFC1918 possible internal network
acl localnet src fc00::/7       # RFC 4193 local private network range
acl localnet src fe80::/10      # RFC 4291 link-local (directly plugged) machines

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 allow manager localhost
http_access allow localhost
http_access allow localnet
http_access deny manager
http_access deny !Safe_ports
http_access deny all
http_access allow localnet
http_access allow localhost
http_access deny all

http_port 3128

hierarchy_stoplist cgi-bin ?

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

cache_peer XXX.XXX.XXX.XXX  parent 3128 0 no-digest
cache_peer_domain XXX.XXX.XXX.XXX .srv-get-my-ip.com

Alsohttp://ip.srv-get-my-ip.comwird problemlos über den Proxy gesendet, da er zurückgibt Current Address: XXX.XXX.XXX.XXX:

1444889588.794    599 192.168.0.12 TCP_MISS/200 522 GET http://ip.srv-get-my-ip.com/ - FIRSTUP_PARENT/XXX.XXX.XXX.XXX text/html

Aberhttps://ip.srv-get-my-ip.comwird nicht über den Proxy gesendet, da es meine IP zurückgibt Current Address: YYY.YYY.YYY.YYY:

1444889762.199    154 192.168.0.12 TCP_MISS/200 6654 CONNECT ip.srv-get-my-ip.com:443 - HIER_DIRECT/AAA.AAA.AAA.AAA -

Wie kann ich Squid dazu bringen, die zweite Abfrage auf die gleiche Weise zu verarbeiten wie die erste?

Hier kommt es auf das Ergebnis an. Wenn also jemand mit einem anderen Proxy als Squid (Apache, Haproxy oder was auch immer) dasselbe Ziel erreichen kann, würde ich es versuchen!

Danke!

Antwort1

Das Proxying von SSL in der von Ihnen beschriebenen Weise ist möglich, aber eserfordert[1] dass Sie über die SSL-Zertifikate verfügen.

Dies ist ein Feature und kein Fehler, da es Man-In-The-Middle-Angriffe gegen SSL verhindert.

Wenn Sie im Besitz der Zertifikate sind, funktionieren die meisten Reverse-Proxys für Sie. Sie können beispielsweise Squid so konfigurieren, dass die SSL-Verbindung beendet wird, und sie dann zum übergeordneten Proxy wiederherstellen. Weitere Informationen finden Sie imSquid-HTTPS-Dokumentation

Beachten Sie auch von dieser Seite:

HTTPS wurde entwickelt, um den Benutzern Privatsphäre und Sicherheit zu bieten. Das Entschlüsseln von HTTPS-Tunneln ohne Zustimmung oder Wissen des Benutzers kann gegen ethische Normen verstoßen und in Ihrer Gerichtsbarkeit illegal sein.

Nginx,Apache Traffic Server,HAProxy, Apache httpd mitmod_proxyund mehrere andere Reverse-Proxys können die SSL-Terminierung für Sie durchführen.

[1] Es gibt Ausnahmen, wenn Sie unsicheres HTTPS tolerieren können oder (was vielleicht noch interessanter ist) wenn Sie in der Lage sind, die vertrauenswürdigen Zertifikate in Clients zu kontrollieren. Aber... auf diesem Weg lauern Gefahren.

verwandte Informationen