Ein HTTPS-Dienst auf Port 8443 kann über einen korrekt konfigurierten Squid-Proxy scheitern, obwohl gewöhnliches HTTPS auf 443 funktioniert. Prüfen Sie die CONNECT-Ablehnung und die Regeln für Zielports, bevor Sie das Proxyprotokoll des Clients ändern.

Bei einer typischen Zugriffsrichtlinie von Squid 6.13 sind zwei Prüfungen wichtig: Das Ziel muss Safe_ports passieren, und CONNECT muss SSL_ports passieren. Wird der Port nur einer ACL hinzugefügt, kann die andere Ablehnung weiterhin greifen.

Die vorhandenen Definitionen gezielt erweitern

Für eine Richtlinie, die gewöhnliche Webports und einen zusätzlichen HTTPS-Port erlaubt:

acl Safe_ports port 80 443 8443
acl SSL_ports port 443 8443

Ersetzen oder bearbeiten Sie die entsprechenden Definitionen, damit kein unerwarteter älterer Wertesatz bestehen bleibt. Behalten Sie die üblichen Regeln zum Ablehnen unsicherer Ports und von CONNECT sowie die vorgesehenen Clientbeschränkungen bei.

Die Ausnahme eng begrenzen

Wird der zusätzliche Port nur für ein kontrolliertes Ziel benötigt, fügen Sie vor der Freigaberegel für den Client eine gezielte Ablehnung ein:

acl extra_tls_port port 8443
acl approved_tls_target dst 203.0.113.20/32
http_access deny CONNECT extra_tls_port !approved_tls_target

Die Adresse ist ein Platzhalter für Dokumentationszwecke. Verwenden Sie das Ziel, das Sie verwalten oder auf das Sie zugreifen dürfen, und berücksichtigen Sie tatsächliche Änderungen seiner Adresse. So begrenzen Sie die Ausnahme für den zusätzlichen Port, statt jedes Ziel auf 8443 zu erlauben.

Lassen Sie die vollständige aktive Konfiguration parsen und prüfen Sie die Regelreihenfolge. Eine korrekt formulierte Ablehnung hinter einer passenden Freigaberegel für den Client bewirkt die vorgesehene Einschränkung nicht.

Testen Sie den genehmigten Hostnamen mit seinem tatsächlichen Zertifikat und Port und anschließend ein kontrolliertes Ziel, das weiterhin abgelehnt werden soll. Lassen Sie die TLS-Prüfung aktiviert, um Fehler bei der Zielidentität von Fehlern in der Proxyrichtlinie zu unterscheiden. Entfernen Sie nicht den gesamten CONNECT-Schutz, nur damit eine Anfrage an einen benutzerdefinierten Port funktioniert.

Ähnliche Artikel