Konfigurieren Sie UMS zur Integration von Reverse Proxy mit SSL-Offloading

Dieser Artikel beschreibt die allgemeinen Konfigurationen des IGEL Universal Management Suite (UMS) für SSL-Offloading mit einem Load Balancer / Reverse Proxy. Sie können dieses Dokument verwenden, wenn Sie möchten, dass das SSL nicht am UMS Server, sondern am Load Balancer / Reverse Proxy beendet wird.

Ein Reverse Proxy / externer Load Balancer kann verwendet werden, wenn Sie nur IGEL OS 12 Geräte verwalten. Siehe IGEL Cloud Gateway vs. Reverse Proxy für die Kommunikation zwischen UMS 12 und IGEL OS Geräten .


Anforderungen an die Reverse-Proxy-Konfiguration

Für die Extraktion von Schlüsseln und Zertifikatsketten benötigen Sie ein geeignetes Tool wie den "Keystore Explorer". Bitte verwenden Sie die neueste Version eines solchen Tools.

Bitte stellen Sie auch sicher, dass Sie Java 17 verwenden.

Beschränkungen

  • Die scan and register command can only be used when an endpoint device can open a direct connection to the UMS. Wenn also ein externer Load Balancer / Reverse Proxy konfiguriert ist, kann die Scan- und Registrierungsfunktion möglicherweise nicht verwendet werden.

Prozess-Übersicht

Wir empfehlen Ihnen, den hier vorgestellten Prozess zu befolgen. Bevor Sie mit der UMS-Konfiguration beginnen, werfen Sie einen Blick auf die UMS-Netzwerkverbindungstypen, die in IGEL Universal Management Suite Netzwerk Konfiguration .

  • Konfigurieren Sie Ihre UMS / ICG:

    1. Aktivieren Sie die Verarbeitung von Weiterleitungsclient-Zertifikaten auf UMS / ICG.

    2. Ändern Sie die Netzwerkeinstellungen des Servers und legen Sie die Prozesskonfiguration fest.

  • Konfigurieren und exportieren Sie die Zertifikate für den Reverse-Proxy:

    1. Konfigurieren Sie das UMS Web-Zertifikat. / Wenn ICG verwendet wird, Cloud-Gateway-Zertifikat konfigurieren.

    2. Exportieren Sie die UMS Web-Zertifikatskette / Wenn ICG verwendet wird, Cloud-Gateway-Zertifikatskette.

      • Extrahieren Sie privaten Schlüssel und Zertifikatskette aus dem exportierten Zertifikat. (Die erforderlichen Dateiformate hängen vom Reverse-Proxy ab.)

    3. Exportieren Sie das EST-CA-Client-Zertifikat.

    4. Exportieren Sie UMS Web Root-Zertifikat / Wenn ICG verwendet wird, Cloud-Gateway Root-Zertifikat. (Wird nur für Azure Application Gateway benötigt, wenn das Vertrauen zum Backend-Server überprüft werden muss.)


Der nächste Schritt ist die Konfiguration des Reverse Proxy. Beispielkonfigurationen finden Sie unter:

Überwachung - Gesundheitsprobe von UMS / ICG

Load-Balancer verwenden Health-Probes, um den Online-Status der Backends zu erkennen und Daten an diese zu verteilen. Wenn eine benutzerdefinierte HTTP-Sonde zur Überwachung des UMS/ICG-Dienstes verwendet werden soll, können die folgenden URLs für Tests konfiguriert werden:

UMS:

  • https://UMS_URL:8443/info oder

  • https://UMS_URL:8443/ums/check-status

ICG:

  • https://UMS_URL:8443/usg/server-status oder

  • https://UMS_URL:8443/usg/check-status

Aktivieren der Verarbeitung von Client-Zertifikaten auf UMS / ICG

Wenn kein ICG verwendet wird, muss die Verarbeitung von weitergeleiteten Client Zertifikaten auf UMS Seite aktiviert werden. Falls nur ein ICG hinter einem Azure Application Gateway verwendet wird, aktivieren Sie die Verarbeitung von weitergeleiteten Client Zertifikaten auf ICG Seite.

Um die Verarbeitung von weitergeleiteten Client Zertifikaten auf UMS zu aktivieren:

  1. Öffnen Sie die Konfigurationsdatei [UMS Installationsverzeichnis]/IGEL/RemoteManager/rmguiserver/conf/appconfig/application.yml.
    Sie sehen:

    igel:
    	client-cert-forwarding:
    		enabled: false
    		client-cert-forwarded-header: X-SSL-CERT
    


  2. Aktivieren Sie client-cert-forwarding durch Setzen von "enabled" auf "true" :

    client-cert-forwarding:
    	enabled: true
    


  3. Bei Bedarf kann der Forwarding-Header konfiguriert werden. Der Wert des X-SSL-CERT-Headers kann geändert werden, aber achten Sie darauf, den entsprechenden Wert in der Proxy-Konfiguration zu ändern.

  4. Speichern Sie die Konfigurationsänderungen und starten Sie den UMS Server-Dienst neu. Einzelheiten zum Neustart des Dienstes finden Sie unter IGEL UMS HA-Dienste und -Prozesse .


Um die Verarbeitung von weitergeleiteten Client Zertifikaten auf ICG Seite zu aktivieren:

  1. Öffnen Sie die Konfigurationsdatei [UMS Installationsverzeichnis]/IGEL/icg/usg/conf/application-prod.yml.
    Sie sehen:

    igel:
    	client-cert-forwarding:
    		enabled: false
    		client-cert-forwarded-header: X-SSL-CERT
    


  2. Aktivieren Sie client-cert-forwarding durch Setzen von "enabled" auf "true" :

    client-cert-forwarding:
    	enabled: true
    


  3. Bei Bedarf kann der Forwarding-Header konfiguriert werden. Der X-SSL-CERT Header-Wert kann geändert werden, aber achten Sie darauf, den entsprechenden Wert in der Proxy-Konfiguration zu ändern.

  4. Speichern Sie die Konfigurationsänderungen und starten Sie den ICG-Server neu.

Ändern der Server-Netzwerkeinstellungen

Wenn Sie einen externen Load Balancer / Reverse Proxy verwenden, müssen Sie den FQDN des UMS Clusters als externe Adresse aktualisieren. Dieser FQDN des UMS-Clusters muss in Ihr Webzertifikat aufgenommen werden, und das entsprechende Zertifikat muss allen UMS-Servern zugewiesen werden:

  1. Gehen Sie zu UMS Administration > Global Configuration > Server Network Settings.

  2. Setzen Sie die Cluster-Adresse.
    Wenn Sie einen Reverse Proxy verwenden, müssen Sie den FQDN des UMS-Clusters als externe Adresse aktualisieren. Dieser Wert muss auf den FQDN und Port des Reverse Proxy gesetzt werden. Ausführliche Informationen finden Sie unter Server-Netzwerkeinstellungen im IGEL UMS .

    image-2024-3-25_10-18-12-1.png


  3. Legen Sie die OS 12-Geräteanmeldungsadresse fest (dies ist die Adresse, die für das Geräte-Onboarding verwendet wird).
    Diese Konfiguration muss für Reverse Proxy ohne optionale Option zur Überprüfung von Client-Zertifikaten wie Azure Application Gateway festgelegt werden. Setzen Sie es auf den FQDN / IP und Port des konfigurierten Listeners für das Device Onboarding.

    image-2024-3-25_10-18-29-1.png


Öffentliche Adresse und Port der UMS Prozesskonfiguration einstellen

Wenn die öffentliche Adresse des UMS von der UMS Adresse abweicht, muss die öffentliche Adresse und der Port gesetzt werden. Diese Option kann unter UMS Administration > UMS Netzwerk > Server eingestellt werden. Dies ist wichtig für das Gerät shadowing.

image-2024-3-25_10-18-53-1.png

UMS Web-Zertifikat / Cloud-Gateway-Zertifikat erstellen

UMS Web-Zertifikat

Web-Zertifikat von einer öffentlichen CA

Wenn ein Web-Zertifikat von einer öffentlichen CA verwendet wird, muss das öffentliche Zertifikat des Ausstellers ebenfalls als Web-Zertifikat importiert werden.
Das Onboarding von OS 12-Geräten wird nur mit einer vollständigen Zertifikatskette erfolgreich sein.


Sie müssen ein gültiges Zertifikat für UMS und Loadbalancer erstellen und verwenden. Vorgeschlagen wird die Verwendung eines eigenen Zertifikats für den Reverse Proxy:

  1. Gehen Sie in der UMS-Konsole zu UMS Administration > Zertifikatsverwaltung > Web.

  2. Erstellen Sie das Zertifikat. Einzelheiten finden Sie unter So verwenden Sie Ihre eigenen Zertifikate für die Kommunikation über den Web-Port (Standard 8443) in IGEL UMS . Allgemeine Informationen zu Webzertifikaten finden Sie unter Web-Zertifikate im IGEL UMS .

    image-20240619-093038.png


  3. Der Proxy-FQDN muss als Hostname hinzugefügt werden, damit er im Zertifikat als Subject Alternative Name aufgeführt wird.

Verwenden Sie Subject Alternative Names (SAN), wenn die IP-Adressen oder Hostnamen, die für den UMS und Ihren Load Balancer / Reverse Proxy verwendet werden, unterschiedlich sind. Für Informationen zu Hostnamen, Cluster-Adressen, FQDNs siehe auch Fehlerbehebung: Fehler 38 beim Onboarding eines IGEL OS 12-Geräts .

image-2024-3-25_10-11-57-1.png


Cloud-Gateway-Zertifikat

Zertifikat von öffentlicher CA

Wenn ein Zertifikat von einer öffentlichen CA verwendet wird, muss das öffentliche Zertifikat des Ausstellers auch als Cloud-Gateway-Zertifikat importiert werden.
Das Onboarding von OS 12-Geräten wird nur mit einer vollständigen Zertifikatskette erfolgreich sein.

Bei Verwendung des Reverse Proxy mit ICG:

  1. Gehen Sie in der UMS-Konsole zu UMS Administration > Zertifikatsverwaltung > Cloud-Gateway.

  2. Erstellen Sie das Zertifikat und fügen Sie die IP oder den Hostnamen des Loadbalancers bei der ICG Zertifikatserstellung hinzu. Verwenden Sie ein Semikolon, um die Werte zu trennen.

UMS und ICG Zertifikate Beispiele

Die Netzwerkintegration von Reverse Proxies und Loadbalancern mit dem UMS und ICG ist ein weites Feld mit einer Vielzahl von möglichen Netzwerkeinstellungen. Hier sind zwei Azure Application Gateway Beispiele mit entsprechenden Zertifikatsdetails aufgeführt:

UMS Beispiel

Dieses Diagramm zeigt ein Azure Application Gateway vor UMS Servern.

Unknown Attachment

Diese UMS Server befinden sich innerhalb eines virtuellen Netzwerks und sind nur über einen privaten FQDN erreichbar. Es gibt ein Azure Application Gateway für eingehende Geräteanfragen und einen weiteren Reverse Proxy / Loadbalancer (Azure Application Gateway) für UMS Web App und Konsolenanfragen. Der UMS Server ist also über zwei verschiedene Adressen erreichbar. Dies muss bei der Web-Zertifikatsgenerierung berücksichtigt werden.

Die private FQDN-Adresse wird vom Azure Application Gateway für die UMS-Verbindung verwendet. Diese Adresse muss als Common Name (CN) auf das UMS Web Zertifikat gesetzt werden. Der öffentliche FQDN muss für UMS Web App / Console-Verbindungen zum UMS als Hostname (Subject Alternative Name) gesetzt werden.

image-2024-3-25_10-15-12-1.png
image-2024-3-25_10-15-37-1.png


ICG Beispiel

Das Diagramm zeigt ein Beispiel für die Integration von Azure Application Gateway und ICG.

Unknown Attachment

In diesem Szenario verbindet sich das Azure Application Gateway mit dem ICG über denselben FQDN wie der UMS Server. Der ICG könnte sich in einer DMZ befinden, so dass nur ein FQDN erforderlich ist.

Das Cloud-Gateway-Zertifikat erfordert den FQDN als Common Name und als Subject Alternative Name für die Verwaltung von UMS.

image-2024-3-25_10-16-9-1.png

Export UMS Web Certificate Chain

Dieses Zertifikat muss zur Verwendung in der Listener-Konfiguration exportiert werden.

  1. Wählen Sie das zuvor konfigurierte Zertifikat aus und klicken Sie auf Zertifikatskette in Keystore exportieren.

    image-2024-3-25_10-19-8-1.png


  2. Setzen Sie ein Passwort und den Dateinamen.

    image-2024-3-25_10-19-39-1.png


  3. Identifizieren Sie den Web-Schlüssel.
    Die exportierte Keystore-Datei enthält mehrere Schlüssel und Zertifikate, zumindest den Root und die aktuell verwendeten Schlüssel und Zertifikate. Ein Tool wie Keystore Explorer kann verwendet werden, um den aktuell verwendeten Web-Schlüssel zu identifizieren.

    Wie man den aktuell verwendeten Web-Schlüssel mit dem Keystore Explorer findet
    1. Öffnen Sie die Datei und geben Sie das für den Export angegebene Passwort ein. Es werden mehrere Einträge angezeigt:
      image-2024-3-25_10-19-57-1.png

    2. Finden Sie den aktuell verwendeten Schlüssel. Dazu können Sie einfach die im UMS angezeigte ID des aktuell verwendeten Zertifikats mit der ID in den Zertifikatsdetails im Keystore Explorer vergleichen.

      image-2023-7-12_16-52-33.png



      image-2024-3-25_10-20-9-1.png




Extract Private Key and Certificate Chain

Unterschiedliche Reverse-Proxys erfordern unterschiedliche Zertifikatsdateien. Für Azure Application Gateway wird tder Schlüssel für die Listener-Konfiguration in einer PFXformatierten Datei benötigt. Parsen Sie die exportierte Keystore-Datei in das PFX Format. Dazu kann der Befehl java keytool verwendet werden. Das Kommandozeilentool ist in der UMS-Installation zu finden: (Installationsverzeichnis)/IGEL/RemoteManager/_jvm/bin
Der Schlüsselalias muss dem Aufruf des Befehls hinzugefügt werden.

keytool -v -importkeystore -srckeystore yourkeystore.keystore -srcalias mykey -destkeystore myp12file.pfx -deststoretype PKCS12


Für Citrix Netscaler, F5 Big IP und NGINX müssen die Zertifikatskette und der private Schlüssel exportiert werden:

  1. Exportieren Sie die Zertifikatskette des aktuell verwendeten Zertifikats.

    image-20240619-093310.png


  2. Wählen Sie Entire Chain und X.509 Format.

    image-2023-7-10_18-33-24.png


  3. Klicken Sie auf Exportieren.

  4. Für F5 Big IP: Wählen Sie auch Nur Kopf und exportieren Sie das Zertifikat in eine andere Datei z.B.: ssl-cert.cer

  5. Exportieren Sie den privaten Schlüssel.

    image-2024-3-27_11-33-44-1.png


  6. Geben Sie das Passwort ein, das Sie in UMS für den Export verwendet haben.

  7. Wählen Sie OpenSSL.

    image-2024-3-27_11-34-9-1.png


  8. Wenn erforderlich, wählen Sie Verschlüsseln und geben Sie die entsprechenden Daten ein. In diesem Beispiel werden wir eine unverschlüsselte Schlüsseldatei verwenden.

    image-2024-3-27_11-34-27-1.png


  9. Klicken Sie auf Exportieren.

Cloud-Gateway-Zertifikatskette exportieren und Schlüssel und Zertifikatskette extrahieren

  1. Gehen Sie in der UMS-Konsole zu UMS Administration > Global Configuration > Zertifikat Management > Cloud-Gateway und exportieren Sie die ICG-Zertifikatskette in das IGEL Cloud Gateway-Keystore-Format:

    image-2024-3-25_11-16-49-1.png


    Die keystore.icg Datei wird gespeichert.

  2. Entpacken Sie die Datei.

  3. Öffnen Sie die Datei keystore.jks und verwenden Sie das Passwort aus der Datei keystorepw.

    image-20240619-093445.png


  4. Wählen Sie den konfigurierten Schlüsseleintrag aus und exportieren Sie den privaten Schlüssel und die Zertifikatskette wie im Abschnitt Privaten Schlüssel und Zertifikatskette extrahieren beschrieben.

Export EST CA Client Certificate Chain

Das EST CA Client Zertifikat wird für die Prüfung des Client Zertifikats benötigt.

Den Export der Client Zertifikatskette finden Sie unter: UMS Administration > Server Netzwerk Einstellungen > Export Client Zertifikatskette.

image-2024-3-25_10-21-23-1.png

Export UMS Web Root Certificate for Azure

Im Azure Application Gateway wird das Root Zertifikat für die Konfiguration der Backend Einstellungen verwendet. Das Root Zertifikat des verwendeten Webzertifikats muss unter UMS Administration > Global Configuration > Zertifikat Management > Web exportiert werden.

image-2024-3-25_10-21-10-1.png

Export Cloud Gateway Root Certificate for Azure

Im Azure Application Gateway wird das Root Zertifikat für die Konfiguration der Backend Settings verwendet. Das Root-Zertifikat des verwendeten Cloud-Gateway Root-Zertifikats unter UMS Administration > Global Configuration > Zertifikat Management > Cloud-Gateway.

image-2024-3-25_10-47-51-1.png