SSL-Redirect mit der Barracuda WAF

Als leistungsfähige Web Application Firewall (WAF) ist die Barracuda bekannt, und der Hersteller betont, wie einfach sie zu bedienen ist. Beides kann ich aus eigener Anwendung bestätigen, aber wie so oft gibt es ein aber: Die WAF kann viel, sehr viel! Das hat aber auch zur Folge, dass es sehr viele Stellschrauben gibt, die man leider auch ver-stellen kann.

Das Problem

Die Barracuda WAF bietet die Möglichkeit einen SSL-Redirect zu implementieren, so dass eingende http-Anfragen automatisch nach https umgeleitet werden. Dies geschieht bei der WAF standardmäßig als Dienst. Leider kann pro IP aber nur ein Dienst je Port existieren, so dass ein simpler Redirect jedesmal eine wertvolle öffentliche IP-Adresse benötigt. Aber bekanntlich führen ja viele Wege nach Rom.

Die Lösung

Mittels Erlauben/Verweigern-Regeln kann für jede Webseite einzeln eine https-Umleitung erzeugt werden, ohne dass eine dedizierte IP benötigt wird, und was noch besser ist: Mit dem beschriebenen Weg lässt sich auch SNI nutzen, so dass mehrere SSL-geschützte Webseiten unter der gleichen IP betrieben werden können.

Zunächst müssen die entsprechenden Einstellungen aufgerufen werden über Websites -> Erlauben/Verweigern

Navigation der Barracuda WAF

Dort muss die entsprechende Webseite ausgewählt und auf den Schalter “Hinzufügen” geklickt werden. Da ich hier ein fast komplett geschwärztes Bild anzeigen müsste, lasse ich das einfach mal bleiben und zeige direkt die weitere Konfiguration:

Wichtig ist die Einstellung “permanente Umleitung”, damit Suchmaschinen erkennen, dass es sich nicht um zwei verschiedene Webseiten handelt. Der entscheidende Schritt liegt im (normalerweise leeren) Feld “Erweiterte Treffer”.

Screenshot der ACL-Konfiguration

Im Feld “Erweiterte Treffer” müssen wir jetzt festlegen, wie wir unsere https-Umleitung mit der Barracuda WAF überhaupt triggern wollen. Ich habe hierfür den folgenden Ansatz gewählt: Wenn eine Anfrage auf http (Port 80) kommt, und NICHT TLS nutzt (was sich ja in 99,9% der Fälle ausschließt, außer jemand würde gezielt https://…:80 erzwingen), dann erfolgt die Weiterleitung mit einem Statuscode 301 an den weiter Unten angegebene Umleitungs-URL. Das Ganze sieht dann so aus:

Detail zum Headerausdruck, der zum Filtern benötigt wird

Keine Sorge, den Headerausdruck kann man sich mit Hilfe der Dropdown-Felder recht einfach zusammenklicken. SSL 3.0 habe ich hier bewusst ignoriert, da ich diese Verschlüsselung in der WAF-Konfiguration nicht mehr zulasse.

Nachdem die Regel dann gespeichert wurde, kann der SSL-Redirect nun getestet werden!

 

Schreibe einen Kommentar