Vor-und Nachteile der Verwendung eines Http-Proxy v / s https-Proxy?

7

Die JVM erlaubt den Proxy-Eigenschaften http.proxyHost und http.proxyPort zur Angabe eines HTTP-Proxy-Servers und https.proxyHost und https.proxyPort zur Angabe eines HTTPS-Proxy-Servers.

Ich habe mich gefragt, ob es irgendwelche Vorteile gibt, einen HTTPS-Proxy-Server im Vergleich zu einem HTTP-Proxy-Server zu verwenden?

Ist der Zugriff auf eine https-URL über einen HTTPS-Proxy weniger mühsam als der Zugriff von einem HTTP-Proxy?

    
Zenil 03.05.2012, 23:21
quelle

2 Antworten

25

Der HTTP-Proxy erhält eine Klartextanfrage und sendet [in den meisten, aber nicht allen Fällen] eine andere HTTP-Anfrage an den Remote-Server und gibt dann Informationen an den Client zurück.

Der HTTPS-Proxy ist ein Relayer, der eine spezielle HTTP-Anfrage (CONNECT-Verb) empfängt und einen undurchsichtigen Tunnel zum Zielserver baut (der nicht notwendigerweise sogar ein HTTPS-Server ist). Dann sendet der Client eine SSL / TLS-Anfrage an den Server und sie setzen mit SSL-Handshake und dann mit HTTPS fort (falls gewünscht).

Wie Sie sehen, sind dies zwei völlig unterschiedliche Proxy-Typen mit unterschiedlichem Verhalten und unterschiedlichen Design-Zielen. Der HTTPS-Proxy kann nichts zwischenspeichern, da die Anforderung nicht an den Server gesendet wird. Mit HTTPS-Proxy haben Sie einen Kanal zum Server und der Client empfängt und validiert das Serverzertifikat (und optional umgekehrt). Der HTTP-Proxy hingegen sieht und hat die Kontrolle über die Anfrage, die er vom Client erhalten hat.

Während HTTPS-Anfragen über HTTP-Proxy gesendet werden können, wird dies fast nie durchgeführt, da der Proxy in diesem Szenario das Zertifikat des Servers validiert, der Client jedoch nur das Zertifikat des Proxy-Servers und als Name im Proxy-Zertifikat empfangen und validieren kann wird nicht mit der Adresse übereinstimmen, mit der der Socket verbunden ist, in den meisten Fällen wird eine Warnung ausgegeben und der SSL-Handshake wird nicht erfolgreich sein (ich gehe nicht auf Einzelheiten ein, wie versucht werden soll, dies zu beheben).

Schließlich, da der HTTP-Proxy in die Anfrage Einsicht nehmen kann, macht dies die Idee der Sicherheit des HTTPS-Kanals ungültig. Daher wird die Verwendung von HTTP-Proxy für HTTPS-Anfragen normalerweise nur zu Debugging-Zwecken durchgeführt (wieder lassen wir Fälle von paranoiden Sicherheitsrichtlinien des Unternehmens weg eine Überwachung des gesamten HtTPS-Verkehrs von Mitarbeitern des Unternehmens erfordern).

Zusatz: Lesen Sie auch meine Antwort zu dem ähnlichen Thema hier .

    
Eugene Mayevski 'Allied Bits 04.05.2012, 04:35
quelle
1

Es gibt keine Vor- und Nachteile. Und es gibt keinen "HTTPS-Proxy" -Server.

Sie können den Protokollhandlern mitteilen, welchen Proxy-Server sie für verschiedene Protokolle verwenden soll. Dies kann für http , https , ftp und socks erfolgen. Nicht mehr und nicht weniger.

Ich kann Ihnen nicht sagen, ob Sie einen anderen Proxy für https-Verbindungen verwenden sollten oder nicht. Es kommt darauf an. Ich kann nur den Unterschied einer HTTP- und HTTPS-Anfrage zu einem Proxy erklären.

Da der HTTP-Proxy (oder der Web-Proxy) HTTP (daher der Name) versteht, kann der Client die Anfrage einfach an den Proxy-Server senden, anstatt die eigentliche Destination zu verwenden. Dies funktioniert nicht für HTTPS . Dies liegt daran, dass der Proxy den TLS-Handshake nicht durchführen kann, was zuerst geschieht. Daher muss der Client eine CONNECT -Anfrage an den Proxy senden. Der Proxy baut eine TCP-Verbindung auf und sendet die Pakete einfach hin und her, ohne sie zu berühren. Der TLS-Handshake findet also zwischen Client und Destenation statt. Der HTTP-Proxy-Server sieht nicht alles und validiert nicht das Zertifikat des Destenation-Servers.

Es kann etwas Verwirrung mit dieser ganzen http, https, Proxy-Sache geben. Es ist möglich, mit einen HTTP-Proxy mit https zu verbinden. In diesem Fall ist die Kommunikation zwischen dem Client und dem -Proxy verschlüsselt.

Es gibt auch sogenannte TLS terminating oder interception Proxy Server wie Squid's SSL Peek and Splice oder rülpsen , die alles sehen . Dies sollte jedoch nicht ohne weiteres funktionieren, da der Proxy eigene Zertifikate verwendet, die nicht von vertrauenswürdigen CAs signiert sind.

Referenzen

xoryves 24.11.2017 13:42
quelle

Tags und Links