So konfigurieren Sie ein CA SSL -Zertifikat in Haproxy

So konfigurieren Sie ein CA SSL -Zertifikat in Haproxy

Die Haproxy ist ein weit verbreiteter, zuverlässiger, leistungsstarker Reverse-Proxy, der für TCP- und HTTP-Anwendungen hohe verfügbare Funktionen und Lastausgleichsfunktionen bietet. Standardmäßig wird es mit kompiliert OpenSSL, So unterstützend SSL Beendigung, ermöglicht es, Ihren Website/Anwendungsstack zu ermöglichen, den Datenverkehr zwischen Ihrem „Web -Eintragsserver“ oder Application Access Gateway -Server und Client -Anwendungen zu verschlüsseln und zu entschlüsseln.

Diese Anleitung zeigt, wie Sie a konfigurieren Ca SSL Zertifikat in Haporxy. In dieser Anleitung geht davon aus.

Die erwarteten Dateien sind:

  • Das Zertifikat selbst.
  • Die Zwischenzertifikate genannt auch Bündel oder Ketten, und.
  • Die Wurzel ca, falls verfügbar und.
  • Der private Schlüssel.

Erstellen Sie eine PEM-formatierte SSL-Zertifikatdatei

Bevor Sie Ihre konfigurieren Ca Zertifikat in Haproxy, Das müssen Sie verstehen Haproxy erfordert eine Single .Pem Datei, die den Inhalt aller oben genannten Dateien enthalten sollte, die in der folgenden Reihenfolge verkettet sind:

  • Der private Schlüssel, der mit endet mit .Taste, (Kann am Start oder Ende der Datei kommen).
  • Gefolgt vom SSL -Zertifikat (endet normalerweise mit .crt).
  • Dann die CA-Bunde (endet normalerweise mit .Ca-Bundle), Und
  • Die Wurzel CA, falls verfügbar.

Um das zu erstellen .Pem Datei, Überziehen Sie in das Verzeichnis, in dem Ihre Zertifikatdateien e enthält. E.G ~/Downloads, Führen Sie dann den CAT -Befehl wie diesen aus (ersetzen Sie die Dateinamen entsprechend):

$ cat Beispiel.com.KEY STAR_EMABLE_COM/STAR_EMABLE_COM.crt star_example_com/star_example_com.Ca-Bundle> Beispiel.com.Pem 

Konfigurieren Sie das PEM -SSL -Zertifikat in Haproxy

Laden Sie als nächstes das gerade erstellte hoch hoch .Pem Zertifikatdatei an die Haproxy Server verwendet den SCP -Befehl wie gezeigt (ersetzen sysadmin Und 192.168.10.24 mit dem Remote -Server -Benutzernamen bzw. IP -Adresse):

$ scp Beispiel.com.PEM [E -Mail geschützt]:/home/sysadmin// 

Erstellen Sie dann ein Verzeichnis, in dem das Zertifikat .Pem Die Datei wird mit dem gespeichert Mkdir Befehl und kopieren Sie die Datei hinein:

$ sudo mkdir -p/etc/ssl/Beispiel.com/ $ sudo cp Beispiel.com.PEM/etc/ssl/Beispiel.com/ 

Öffnen Sie als nächstes Ihre Haproxy Konfigurationsdatei und konfigurieren das Zertifikat im Abschnitt Frontend Listener unter Verwendung der SSL- und CRT -Parameter: Ersteres ermöglicht die SSL.

Frontend http_frontend -Modus HTTP BIND *: 80 BIND *: 443 SSL CRT/ETC/SSL/Beispiel.com/Beispiel.com.PEM ALPN H2, HTTP/1.1 Umleitungsschema HTTPS -Code 301 Wenn !SSL_FC default_backend http_servers 

Bestimmte Versionen von SSL/TLS werden jetzt nicht für die Verwendung von Schwachstellen empfohlen, die darin entdeckt wurden. Die unterstützte Version von zu begrenzen SSL, Sie können die hinzufügen SSL-min-v Parameter wie dieser:

binden *: 443 SSL CRT/etc/SSL/Beispiel.com/Beispiel.com.PEM ALPN H2, HTTP/1.1 SSL-min-Vers tlsv1.2 

Konfigurieren Sie HAPROXY, um HTTP auf HTTPS umzuleiten

Um sicherzustellen, dass Ihre Website nur über über die Übertragung von übertragen wird Https, Sie müssen es Hraproxy ermöglichen, alle umzuleiten Http Verkehr zu Https Falls ein Benutzer versucht, über HTTP darauf zuzugreifen (Port 80).

Fügen Sie der obigen Konfiguration die folgende Zeile hinzu:

Umleitungsschema HTTPS -Code 301 Wenn !SSL_FC oder http-Request-Umleitungschema https, es sei denn 

Ihr Frontend -Abschnitt sollte jetzt wie der in dieser Beispielkonfiguration aussehen:

Frontend http_frontend -Modus HTTP BIND *: 80 BIND *: 443 SSL CRT/ETC/SSL/Beispiel.com/Beispiel.com.PEM ALPN H2, HTTP/1.1 SSL-min-Vers tlsv1.2 Umleitungsschema HTTPS -Code 301 Wenn !oder -Content-Typ-Optionen NoSniff Standard-Server Check MaxConn 5000 Server http_server1 10.2.1.55:80 

Speichern Sie die Konfigurationsdatei und schließen Sie sie.

Überprüfen Sie dann, ob die Syntax mit dem folgenden Befehl korrekt ist:

$ sudo haproxy -f/etc/haproxy/haproxy.CFG -C 
Überprüfen Sie die Haproxy -Konfiguration

Wenn die Konfigurationsdatei gültig ist, laden Sie den HaProxy -Dienst neu, um die jüngsten Änderungen in der Konfiguration mit dem Befehl systemCTL aufzunehmen:

$ sudo systemctl Reload Haproxy 

Testen Sie nicht zuletzt das gesamte Setup, indem Sie auf Ihre Website von einem Webbrowser zugreifen und sicherstellen, dass das Zertifikat gut geladen wird und der Browser angibt, dass das „das„Die Verbindung ist sicher”!

Überprüfen Sie die Haproxy -Website

Das ist alles! Wir hoffen, dass dieser Leitfaden Ihnen geholfen hat, ein SSL -Zertifikat in der Haproxy Load Balancer -Software zu konfigurieren. Wenn Sie auf Fehler stoßen. Wir werden uns freuen, Ihnen zu helfen.