F5 BIG-IP Beispielkonfiguration als Reverse Proxy in der IGEL UMS mit SSL Offloading

In diesem Artikel finden Sie eine Beispielkonfiguration von F5 BIG-IP für SSL Offloading in der IGEL Universal Management Suite (UMS).

Die allgemeine Kompatibilität wurde mit den in diesem Artikel beschriebenen Konfigurationen getestet. Es kann auch andere Möglichkeiten zur Konfiguration geben.
Da der Reverse Proxy eine externe Software ist, können wir keinen vollständigen Support für jede Version bereitstellen.


Voraussetzungen

Die Anforderungen an UMS und Zertifikatskonfiguration für einen Reverse Proxy sind in UMS für die Integration eines Reverse Proxy mit SSL Offloading konfigurieren zusammengefasst.

Für die Nutzung von Remote-Management-Funktionen über den F5 BIG-IP Reverse Proxy benötigen Sie IGEL OS 12.3.2 oder höher und UMS 12.04.120 oder höher.

Der Grund dafür ist, dass F5 BIG-IP den im Geräte-Zertifikat verwendeten EC-Schlüssel nicht unterstützt hat. Daher wurde dies ab diesen Versionen auf RSA-Schlüssel umgestellt. (Der Schlüsseltyp des Geräte-Zertifikats kann im IGEL Setup über den Registry-Key system.remotemanager.device_key_type.)

Prozessübersicht

Die Konfigurationsaufgaben für F5 BIG-IP sind:

  • UMS- / ICG-Konfiguration und Zertifikatexport wie unter UMS für die Integration eines Reverse Proxy mit SSL Offloading konfigurieren beschrieben

  • UMS Zertifikatsverwaltung (Web UMS und EST CA)

  • Konfiguration von UMS Backend Node und Pool

  • iRule-Konfiguration zur Weiterleitung des Client-Zertifikats

  • SSL Client Profile Konfiguration

  • SSL Server Profile Konfiguration

  • Virtual Server Konfiguration

Zertifikatsverwaltung

Die in UMS für die Integration eines Reverse Proxy mit SSL Offloading konfigurieren erstellten Zertifikate müssen in der F5 BIG-IP Anwendung hinzugefügt werden. BIG-IP bietet eine zentrale Zertifikatsverwaltung.

Zur Konfiguration der UMS Web-Zertifikate / Schlüssel:

  1. Fügen Sie den UMS Web Private Key hinzu.

    image-2024-3-27_10-30-58-1.png


  2. Fügen Sie das UMS Web-Zertifikat hinzu.

    image-2024-3-27_10-31-53-1.png


  3. Fügen Sie die UMS Web-Zertifikatskette hinzu.

    image-2024-3-27_10-32-18-1.png


  4. Fügen Sie das UMS EST CA-Zertifikat hinzu.

    image-2024-3-27_10-32-42-1.png


  5. Stellen Sie sicher, dass alle Zertifikate importiert wurden.

    image-2024-3-27_10-33-17-1.png

Konfiguration von Backend Node und Pool

Der UMS Server muss als Backend-Server konfiguriert werden

  1. Fügen Sie einen Monitor hinzu und konfigurieren Sie ihn, um zu prüfen, ob die UMS Info-URL erreichbar ist.
    Folgende Eigenschaften müssen gesetzt werden:

    Type

    HTTPS

    Send String

    GET /info\r\n

    Receive String

    IGEL Universal Management Suite

    image-2024-3-27_10-34-7-1.png


  1. Erstellen Sie einen neuen Node und setzen Sie die Adresse des UMS Servers.

    image-2024-3-27_10-37-21-1.png


  2. Fügen Sie einen Pool hinzu. In der Pool-Konfiguration müssen mindestens der Monitor und der Node-Server konfiguriert werden. Es wird keine spezifische Load-Balancing-Methode empfohlen.

    image-2024-3-27_10-37-58-1.png


IRULE-Konfiguration zur Weiterleitung des Client-Zertifikats im HTTP-Header

iRule ist die Skriptunterstützung von F5 BIG-IP.

Das Client-Zertifikat kann aus HTTP_REQUEST gelesen werden. Die Variable [X509::whole [SSL::cert 0]] enthält es im PEM-Format.

Die UMS erwartet das Zertifikat URL-kodiert, daher muss es entsprechend kodiert werden: [URI::encode $ssl_cert]

26a7827e-1a4d-4051-bbfd-274a730a9f59#media-blob-url=true&id=ee5a62a9-7c27-45ee-9704-db464ef108b8&contextId=147540&collection=

Beispiel für einen 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!"
    }
}

SSL Client Profile Konfiguration

Das SSL Client Profile wird verwendet, um die SSL-Konfiguration für alle eingehenden Anfragen an die Virtual Server festzulegen.

  1. Erstellen Sie ein neues SSL Client Profile und konfigurieren Sie es entsprechend der Abbildung.

    image-2024-3-27_10-40-30-1.png


  2. Konfigurieren Sie die UMS Web-Zertifikate und den Key.

    image-2024-3-27_10-42-10-1.png


  3. Für die Verbindung vom Gerät zur UMS wird TLSv1.3 verwendet, daher müssen die Cipher entsprechend angepasst werden.

    Ciphers

    f5-default kann als Cipher Group verwendet werden

    Options List

    Deaktivieren Sie den Eintrag „No TLSv1.3“ in der Liste der aktivierten Optionen

    image-2024-3-27_10-43-4-1.png


  1. Die erforderlichen Anpassungen für die Client-Zertifikatsauthentifizierung sind:

    Client Certificate

    Dieser Wert muss auf request gesetzt werden

    Trusted Certificate Authorities

    Auf UMS-ESTCA-Certificate setzen

    Advertised Certificate Authorities

    Kann auf UMS-ESTCA-Certificate gesetzt werden

    image-2024-3-27_10-44-12-1.png


SSL Server Profile Konfiguration

Das SSL Server Profile wird verwendet, um die SSL-Konfiguration für alle Anfragen an die Backend-Server (UMS) festzulegen.

  1. Erstellen Sie ein neues SSL Server Profile.

  2. Setzen Sie den Chain-Wert auf die UMS Web-Zertifikatskette.

  3. Setzen Sie die TLSv1.3-Konfiguration identisch zur oben beschriebenen SSL Client Profile Konfiguration.

    image-2024-3-27_10-47-35-1.png

Virtual Server Konfiguration

Der Virtual Server definiert den Listener in F5 BIG-IP.

  1. Setzen Sie die folgenden Werte:

    Type

    Standard

    Source Address

    Von welcher IP Anfragen erlaubt sind. Setzen Sie den Wert auf *, wenn dies nicht geprüft werden soll

    Destination Address

    Die Adresse, unter der dieser Virtual Server erreichbar ist

    Service Port

    Wählen Sie den UMS-Port

    image-2024-3-27_10-50-25-1.png

    Protocol

    TCP

    HTTP Profile

    http, erforderlich zur Auswertung des HTTP-Headers

    SSL Profile (Client)

    Fügen Sie das zuvor erstellte Client SSL Profile hinzu

    SSL Profile (Server)

    Fügen Sie das zuvor erstellte Server SSL Profile hinzu

    Source Address Translation

    Auf Auto Map setzen

    image-2024-3-27_10-51-26-1.png
    image-2024-3-27_10-51-45-1.png


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

    image-20240619-082734.png


Nächster Schritt: Über Reverse Proxy verbundene Geräte verwalten

Eine Liste nützlicher Funktionen, die die Verwaltung von über einen Reverse Proxy verbundenen Geräten unterstützen, finden Sie unter Nützliche IGEL UMS Funktionen für die Verwaltung von über Reverse Proxy verbundenen Geräten.