F5 BIG-IP - Beispielkonfiguration für Reverse Proxy in IGEL UMS mit SSL Offloading
In diesem Artikel finden Sie eine Beispielkonfiguration für F5 BIG-IP zur Verwendung mit SSL Offloading in der IGEL Universal Management Suite (UMS).
Die allgemeine Kompatibilität wurde mit den in diesem Artikel beschriebenen Konfigurationen getestet. Es kann jedoch auch andere Möglichkeiten zur Umsetzung der Konfiguration geben. Da es sich beim Reverse Proxy um eine externe Software handelt, kann kein vollständiger Support für jede Version angeboten werden.
Anforderungen
Die Anforderungen an die UMS sowie an die Zertifikatkonfiguration für den Reverse Proxy sind in UMS zur Integration von Reverse Proxy mit SSL Offloading konfigurieren zusammengefasst.
Um Remote-Management-Funktionen über den F5 BIG-IP Reverse Proxy nutzen zu können, ist IGEL OS ab Version 12.3.2 und UMS ab Version 12.04.120 erforderlich.
Der Hintergrund dafür ist, dass F5 BIG-IP den zuvor verwendeten EC-Schlüssel im Gerätezertifikat nicht unterstützte. Ab den genannten Versionen wurde daher auf RSA-Schlüssel umgestellt. (Der Schlüsseltyp des Gerätezertifikats kann in IGEL Setup über den Registry-Schlüssel system.remotemanager.device_key_type geändert werden.)
Prozessübersicht
Die Konfigurationsschritte für F5 BIG-IP umfassen:
UMS / ICG Konfiguration und Zertifikatexport wie beschrieben in UMS zur Integration von Reverse Proxy mit SSL Offloading konfigurieren
Zertifikatsverwaltung in der UMS (Web UMS und EST CA)
Konfiguration des Backend-Knoten und des Pools in der UMS
Konfiguration einer iRule zur Weiterleitung des Client-Zertifikats
Konfiguration des SSL-Client-Profils
Konfiguration des SSL-Server-Profils
Konfiguration des virtuellen Servers
Zertifikatsverwaltung
Die Zertifikate, die in UMS zur Integration von Reverse Proxy mit SSL Offloading konfigurieren erstellt wurden, müssen in der F5 BIG-IP-Anwendung hinzugefügt werden. F5 BIG-IP bietet eine zentrale Zertifikatsverwaltung.
Um die UMS-Web-Zertifikate und -Schlüssel zu konfigurieren:
Fügen Sie den UMS Web Private Key hinzu.
Fügen Sie das UMS Web-Zertifikat hinzu.
Fügen Sie die UMS Web-Zertifikatskette hinzu.
Fügen Sie das UMS EST CA-Zertifikat hinzu.
Überprüfen Sie, dass Sie alle importierten Zertifikate haben.
Konfiguration von Backend-Knoten und -Pools
Der UMS Server muss als Backend-Server konfiguriert werden.
Fügen Sie einen Monitor hinzu und konfigurieren Sie ihn so, dass geprüft wird, ob die UMS Info URL erreichbar ist.
Dabei müssen folgende Eigenschaften gesetzt werden:
Typ | HTTPS |
Send String: Zeichenfolge, die vom Monitor an den UMS Server gesendet wird | GET /info\r\n |
Receive String: Zeichenfolge, die vom Monitor als gültige Antwort vom UMS Server erwartet wird | IGEL Universal Management Suite |

Erstellen Sie einen neuen Node und geben Sie die Adresse des UMS Servers an.
Fügen Sie einen Pool hinzu. In der Pool-Konfiguration müssen mindestens der Monitor und der Node-Server konfiguriert werden. Eine spezifische Load-Balancing-Methode wird nicht empfohlen.
IRULE-Konfiguration zur Weiterleitung des Client-Zertifikats im HTTP-Header
iRules sind die Skriptunterstützung von F5 BIG-IP.
Das Client-Zertifikat kann innerhalb des HTTP_REQUEST ausgelesen werden. Die Variable [X509::whole [SSL::cert 0]]
enthält das Zertifikat im PEM
-Format.
Da die UMS das Zertifikat URL-codiert erwartet, muss es entsprechend codiert werden:[URI::encode $ssl_cert]
Beispiel für Forwarding-Header:
when HTTP_REQUEST {
set DEBUG 1
if { [SSL::cert count] > 0 } then {
set ssl_cert [X509::whole [SSL::cert 0]]
set encodedCert [URI::encode $ssl_cert]
HTTP::header insert "X-SSL-CERT" "$encodedCert"
if { $DEBUG } {
log local0. "Client Certificate: $ssl_cert"
log local0. "Client Certificate Accepted: [X509::subject [SSL::cert 0]]"
log local0. "Client inserted"
log local0. [HTTP::header names]
}
} else {
log "No Client SSL Certificate!"
}
}
Konfiguration des SSL-Client-Profils
Das SSL-Client-Profil wird verwendet, um die SSL-Konfiguration für alle eingehenden Anfragen an die virtuellen Server festzulegen.
Erstellen Sie ein neues SSL-Client-Profil und konfigurieren Sie es entsprechend der untenstehenden Abbildung.
Konfigurieren Sie die UMS-WEB-Zertifikate und Schlüssel.
TLS 1.3 wird für die Verbindung vom Gerät zur UMS verwendet, daher müssen die Ciphers individuell angepasst werden.
Ciphers | Die Cipher Group f5-default kann verwendet werden. |
Liste der Optionen | Deaktivieren Sie den Eintrag „No TLSv1.3“ in der Liste der aktivierten Optionen. |

Die notwendigen Anpassungen für die Authentifizierung von Client Zertifikaten sind:
Client Certificate | Dieser Wert muss auf request gesetzt werden. |
Trusted Certificate Authorities | Setzen Sie diesen Wert auf UMS-ESTCA-Zertifikat |
Advertised Certificate Authorities | Können Sie auf UMS-ESTCA-Zertifikat setzen |

Konfiguration des SSL-Server-Profils
Das SSL-Server-Profil wird verwendet, um die SSL-Konfiguration für alle Anfragen an die Backend-Server (UMS) festzulegen.
Erstellen Sie ein neues SSL-Server-Profil.
Setzen Sie den Wert für die Kette auf die UMS Web-Zertifikatskette.
Die Konfiguration für TLS 1.3 sollte identisch zur oben beschriebenen Einstellung im SSL-Client-Profil erfolgen.
Konfiguration des virtuellen Servers
Der virtuelle Server definiert den Listener in F5 BIG-IP.
Setzen Sie die folgenden Werte:
Typ | Standard |
Quelladresse | Gibt an, von welchen IP-Adressen Anfragen erlaubt sind. Setzen Sie den Wert auf *, wenn keine Einschränkung erfolgen soll. |
Zieladresse | Die Adresse, unter der dieser virtuelle Server erreichbar ist. |
Service-Port | Wählen Sie den für die UMS verwendeten Port. |

Protokoll | TCP |
HTTP-Profil | http - erforderlich, um den HTTP-Header auswerten zu können |
SSL-Profil (Client) | Fügen Sie das zuvor erstellte Client-SSL-Profil hinzu |
SSL-Profil (Server) | Fügen Sie das zuvor erstellte Server-SSL-Profil hinzu |
Quelle Adress Translation | Setzen Sie diesen Wert auf Auto Map |


Fügen Sie dem virtuellen Server den Pool und die iRule hinzu.