WebSocket-Kommunikation zwischen VDA und Delivery Controller™

Dieser Artikel beschreibt, wie eine WebSocket-Verbindung für die Kommunikation zwischen VDAs und Delivery Controllern als Alternative zur WCF-Kommunikation eingerichtet wird. Dies bietet den Vorteil, dass für die Kommunikation vom VDA zum Delivery Controller nur der TLS-Port 443 verwendet wird.

Derzeit ist dies nur für über MCS bereitgestellte Maschinen verfügbar. Manuell bereitgestellte Maschinen befinden sich in der technischen Vorschau. Siehe [Enroll non-MCS provisioned VDAs using tokens (Preview)].

Funktionsweise

Der folgende Abschnitt beschreibt den Workflow für die WebSocket-Verbindung zwischen einem Delivery Controller und einem VDA:

  1. Citrix Virtual Apps and Desktops™-Administratoren initiieren den Prozess, indem sie VDAs mit dem Machine Creation Service (MCS) bereitstellen.
  2. Während des MCS-Bereitstellungsprozesses generiert MCS für jeden VDA öffentliche/private Schlüsselpaare und registriert die öffentlichen Schlüssel beim FMA-Vertrauensdienst auf dem Delivery Controller. MCS speichert das öffentliche/private Schlüsselpaar als Datei auf der Identitätsdisk der VDAs.
  3. Wenn die VDA-Maschine hochfährt, liest der auf der VDA-Maschine installierte MCS-Agent das Schlüsselpaar von der Identitätsdisk und schreibt diese Informationen in den VDA-Registrierungsspeicherort.
  4. Der auf dem VDA installierte Broker-Agent liest die Schlüsselpaare aus der Registrierung und generiert eine SSL-fähige WebSocket-Anfrage an den Delivery Controller mit dem vom privaten Schlüssel signierten Dienstschlüssel.
  5. Der Delivery Controller überprüft den signierten Dienstschlüssel-Autorisierungsheader mit dem öffentlichen Schlüssel des FMA-Vertrauensdienstes.
  6. Nach Abschluss der Überprüfung stellt das System die WebSocket-Verbindung zwischen dem VDA und dem Delivery Controller her.

WebSocket-Unterstützung

Bevor Sie beginnen

  1. Konfigurieren Sie Ihre Site. Weitere Informationen finden Sie unter Site erstellen.
  2. Installieren Sie TLS-Zertifikate auf den Delivery Controllern. Weitere Informationen finden Sie unter Installieren von TLS-Serverzertifikaten auf Controllern.
  3. Installieren Sie die Stammzertifizierungsstelle und die Zwischenzertifizierungsstelle auf dem VDA, um dem Delivery Controller zu vertrauen.

Vorgehensweise

Befolgen Sie die Anweisungen, um eine WebSocket-Verbindung einzurichten:

  1. Aktivieren Sie die WebSocket-Verbindung auf dem Delivery Controller. Führen Sie den folgenden Befehl auf jedem Delivery Controller aus, der auf Ihrer Site vorhanden ist:

    New-ItemProperty "HKLM:\SOFTWARE\Citrix\DesktopServer\WorkerProxy" -Name "WebSocket_Enabled" -PropertyType "DWord" -Value 1 -Force

    Hinweis:

    Stellen Sie sicher, dass Sie die Delivery Controller neu starten, nachdem Sie WebSocket aktiviert haben.

  2. Erstellen Sie einen Maschinenkatalog für in AD eingebundene VDAs mit MCS-Bereitstellung. Weitere Informationen finden Sie unter Maschinenkatalog erstellen.
  3. Erstellen Sie eine Bereitstellungsgruppe und fügen Sie Ihren VDA hinzu. Weitere Informationen finden Sie unter Bereitstellungsgruppen erstellen.
  4. Aktivieren Sie die WebSocket-Verbindung auf dem VDA. Führen Sie den folgenden PowerShell-Befehl auf dem VDA aus:

    New-ItemProperty "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\CitrixBrokerAgent\WebSocket" -Name "Enabled" -PropertyType "DWord" -Value 1 -Force
    <!--NeedCopy-->
    
    • Um zu überprüfen, ob WebSocket aktiviert ist, überprüfen Sie den folgenden Registrierungsschlüsselwert. Der Wert von Enabled muss 1 sein.

      Schlüssel:

       HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\CitrixBrokerAgent\WebSocket
       <!--NeedCopy-->
      

      Name: Enabled

      Typ: REG_DWORD

      Wert: 1

WebSocket-Kommunikation zwischen VDA und Delivery Controller™