fragen stichworte

Port 443 bei einer Firewall auf Port 80 umleiten?

Ich kam kürzlich in eine Situation, in der ein Webserver, auf dem ich lief, HTTPS-Verkehr nicht mehr bedienen konnte (aufgrund einiger SSL-Zertifizierungsprobleme). Da der Server diesen Datenverkehr nicht verarbeiten konnte, konnte ich die Apache-Umleitungsregeln nicht für die Umleitung auf Nicht-https verwenden. Ich habe dann versucht, X.X.X.X: 443 zu X.X.X.X: 80 an meiner Firewall/meinem NAT-Gerät umzuleiten, konnte es aber nicht schaffen, dass es funktioniert.

Ich frage nicht, wie das geht, da dies spezifisch für meine Infrastruktur und meine Geräte ist. Aber ist das überhaupt möglich? Ein Kollege schlug vor, dass dies möglicherweise nicht möglich ist, da der Client eine sichere Verbindung anfordert und diese fehlschlug, weil wir mit einer unsicheren Verbindung antworteten. Dies würde sich davon unterscheiden, wenn Sie mit einem 302 antworten und den Client dazu zwingen, eine neue Anforderung für Nicht-https mit Apache-Umleitungen zu erstellen.

antworten

Nein. Durch die Umleitung von Port 443 auf 80 wird die Firewall umgeleitet. Kunden erwarten, dass etwas SSL-fähig antworten wird, und sie erhalten stattdessen eine einfache HTTP-Antwort. Dies führt zu einem Fehler (z. B. ssl_error_rx_record_too_long).

Das, worauf Sie sich beziehen, heißt SSL Offloading. Es ist, wenn etwas (im Wesentlichen ein HTTPS-fähiger Webserver) SSL/TLS aus einem HTTPS-Stream auslagert und daraus HTTP erstellt und dann an einen HTTP-Webserver weiterleitet, der als Proxy fungiert.

Natürlich sollte der Auslagerer keine Probleme mit Zertifikaten haben.

Wenn Sie eine HTTPS-Verbindung stillschweigend herabstufen könnten, könnten Sie leicht einen MITM-Angriff durchführen, so dass diese Art von Verhalten sowieso unerwünscht wäre.

Auch muss die SSL-Verbindung hergestellt werden, bevor Ihr Webserver überhaupt wissen kann, was mit der Anfrage zu tun ist, da die Anfrage selbst bereits verschlüsselt gesendet wird, da die Anfragedaten mindestens so sensitiv sein können wie die Antwort (Klartext Anmeldeinformationen, Anmeldungs-Cookies, geposteter Inhalt ....)