Citrix Gateway

Zustandsloser RDP-Proxy

Der Stateless RDP-Proxy greift auf einen RDP-Host zu. Der Zugriff wird über RDPListener auf Citrix Gateway gewährt, wenn sich der Benutzer auf einem separaten Citrix Gateway Authenticator authentifiziert. Die vom RDPListener für Citrix Gateway benötigten Informationen werden sicher auf einem STA-Server gespeichert. Ein STA-Server kann überall platziert werden, solange das Citrix Gateway und die Anwendungsenumerationsserver ihn erreichen können. Einzelheiten finden Sie unter https://support.citrix.com/article/CTX101997.

Ablauf der Verbindung

Am RDP-Proxyfluss sind zwei Verbindungen beteiligt. Die erste Verbindung ist die SSL-VPN-Verbindung des Benutzers zum Citrix Gateway VIP und die Aufzählung der RDP-Ressourcen.

Die zweite Verbindung ist die native RDP-Clientverbindung zum RDP-Listener (konfiguriert mit RDPip und RDPPort) auf dem Citrix Gateway und die anschließende sichere Weiterleitung des RDP-Clients an Serverpakete.

Flussdiagramm der Verbindung

  1. Der Benutzer stellt eine Verbindung zum Authenticator Gateway VIP her und stellt die Anmeldeinformationen bereit.

  2. Nach erfolgreicher Anmeldung am Gateway wird der Benutzer zur Homepage/zum externen Portal weitergeleitet, das die Remote-Desktop-Ressourcen auflistet, auf die der Benutzer zugreifen kann.

  3. Sobald der Benutzer eine RDP-Ressource ausgewählt hat, wird eine Anforderung vom Authenticator Gateway VIP in dem Format empfangen, das die veröffentlichte Ressource https://AGVIP/rdpproxy/ip:port/rdptargetproxy angibt, auf die der Benutzer geklickt hat. Diese Anforderung enthält die Informationen über die IP und den Port des RDP-Servers, die der Benutzer ausgewählt hat.

  4. Das Authenticator-Gateway verarbeitet die /rdpproxy/ -Anforderung. Da der Benutzer bereits authentifiziert ist, enthält diese Anfrage ein gültiges Gateway-Cookie.

  5. Die RDPTarget und RDPUser Informationen werden auf dem STA-Server gespeichert und ein STA-Ticket wird generiert. Die Informationen werden als XML-Blob gespeichert, das optional mit dem konfigurierten Pre-Shared-Schlüssel verschlüsselt wird. Wenn es verschlüsselt ist, wird das Blob base64-codiert und gespeichert. Das Authenticator Gateway verwendet einen der STA-Server, der auf dem virtuellen Gateway-Server konfiguriert ist.

  6. Das XML-Blob hat das folgende Format

    <Value name=”IPAddress”>ipaddr</Value>\n<Value name=”Port”>port</Value>n
    
    <Value name=”`Username`”>username</Value>\n<Value name=”Password”>pwd</Value>
    <!--NeedCopy-->
    
  7. Das in der /rdpproxy/ -Anforderung rdptargetproxy erhaltene wird als ‘fulladdress’ und das STA-Ticket (vorab mit der STA-AuthID angehängt) wird als loadbalanceinfo in der.rdp-Datei gesetzt.

  8. Die .rdp Datei wird an den Client-Endpunkt zurückgesendet.

  9. Der native RDP-Client startet und stellt eine Verbindung zum her RDPListener Gateway. Es sendet das STA-Ticket im ersten x.224-Paket.

  10. Der RDPListener Gateway validiert das STA-Ticket und erhält die RDPTarget und RDPUser Informationen. Der zu verwendende STA-Server wird mit der in der vorhandenen ‘AuthID’ abgerufen loadbalanceinfo.

  11. Eine Gateway-Sitzung wird zum Speichern von Autorisierungs-/Überwachungsrichtlinien erstellt. Wenn eine Sitzung für den Benutzer existiert, wird sie wiederverwendet.

  12. Der RDPListener Gateway verbindet sich mit dem RDPTarget und meldet sich mit CREDSSP an.

Voraussetzungen

  • Der Benutzer wird im Citrix Gateway-Authentifikator authentifiziert.

  • Die anfängliche /rdpproxy-URL und der RDP-Client sind mit einem anderen RDPListener Citrix Gateway verbunden.

  • Das Authenticator Gateway, das einen STA-Server verwendet, übergibt die RDPListener Gateway Informationen sicher.

Konfigurieren Sie den statuslosen RDP-Proxy über die CLI

  • Fügen Sie ein rdpServer Profil hinzu. Das Serverprofil ist auf dem konfiguriert RDPListener Gateway.

    Hinweis:

    • Sobald das RDPServer-Profil auf dem virtuellen VPN-Server konfiguriert ist, kann es nicht geändert werden. Außerdem kann dasselbe rdpServerProfile nicht auf einem anderen virtuellen VPN-Server wiederverwendet werden.
    • Der RDPIP und der RDPPort, die zuvor auf dem virtuellen VPN-Server konfiguriert wurden, sind Teil des rdpServerProfile. Der rdp Profile wird in umbenannt rdp ClientProfile und der Parameter clientSSL wird entfernt. Daher funktioniert die frühere Konfiguration nicht.
     add rdpServer Profile [profilename] -rdpIP [IPV4 address of the RDP listener] -rdpPort [port for terminating RDP client connections] -psk [key to decrypt RDPTarget/RDPUser information, needed while using STA].
     <!--NeedCopy-->
    

    Das RDPServer-Profil wird auf dem virtuellen VPN-Server mit dem folgenden Befehl konfiguriert:

     add vpn vserver v1 SSL [publicIP] [portforterminatingvpnconnections] -rdpServerProfile [rdpServer Profile]
     <!--NeedCopy-->
    

    Wichtig:

    • Für einen statuslosen RDP-Proxy validiert der STA-Server das vom RDP-Client gesendete STA-Ticket, um die RDPTarget/RDPUser Informationen zu erhalten. Sie müssen den STA-Server zusätzlich zum virtuellen VPN-Server binden. Zum Beispiel;
         add vpn url url4 RDP2 "rdp://1.1.1.0/1.1.1.2:443" ---> here RDP is 1.1.1.0 and 1.1.1.2 is the virtual server
     <!--NeedCopy-->
    

Der rdp Profilbefehl wird in rdpClient Profil umbenannt und hat neue Parameter. Der Befehl MultiMonitorSupport wurde hinzugefügt. Außerdem wurde eine Option zum Konfigurieren von benutzerdefinierten Params hinzugefügt, die als Teil des RDP-Clientprofils nicht unterstützt werden. Der ClientSSL-Param wurde entfernt, da die Verbindung immer gesichert ist. Das Clientprofil ist auf dem Authenticator Gateway konfiguriert.

add rdpClient profile <name> -rdpHost <optional FQDN that will be put in the RDP file as ‘fulladdress’> [-rdpUrlOverride ( ENABLE | DISABLE )] [-redirectClipboard ( ENABLE | DISABLE )] [-redirectDrives ( ENABLE | DISABLE )]

        [-redirectPrinters ( ENABLE | DISABLE )] [-keyboardHook <keyboardHook>] [-audioCaptureMode ( ENABLE | DISABLE )] [-videoPlaybackMode ( ENABLE | DISABLE )]

        [-rdpCookieValidity <positive_integer>][-multiMonitorSupport ( ENABLE | DISABLE )] [-rdpCustomParams <string>]
<!--NeedCopy-->

Die —rdphHost-Konfiguration wird in einer einzelnen Gateway-Bereitstellung verwendet.

  • Verknüpfen Sie das RDP-Profil mit dem virtuellen VPN-Server.

Sie können ein RDP-Profil entweder durch Konfigurieren einer SessionAction+SessionPolicy oder durch Festlegen des globalen VPN-Parameters zuordnen.

Beispiel:

add vpn sessionaction <actname> -rdpClientprofile <rdpprofilename>

add vpn sessionpolicy <polname> NS_TRUE <actname>

bind vpn vserver <vservername> -policy <polname> -priority <prioritynumber>
<!--NeedCopy-->

ODER

set vpn parameter –rdpClientprofile <name>
<!--NeedCopy-->

Konfigurieren Sie den statuslosen RDP-Proxy über die GUI

Die folgenden Schritte auf hoher Ebene sind an der statuslosen RDP-Proxy-Konfiguration beteiligt. Die detaillierten Schritte finden Sie unter RDP-Proxy-Konfiguration.

  • Erstellen Sie ein RDP-Serverprofil
  • Erstellen Sie ein RDP-Clientprofil
  • Create a virtual server
  • Erstellen Sie ein Lesezeichen
  • Erstellen oder Bearbeiten eines Sitzungsprofils oder einer Richtlinie
  • Binden Sie ein Lesezeichen

Wichtig:

Für einen zustandslosen RDP-Proxy müssen Sie zusätzlich zum virtuellen VPN-Server einen STA-Server binden.

Zähler für Verbindung

Ein neuer Verbindungszähler ns_rdp_tot_curr_active_conn wurde hinzugefügt, der die Anzahl der verwendeten aktiven Verbindungen aufzeichnet. Es kann als Teil des nsconmsg Befehls in der Citrix ADC-Shell angezeigt werden. Der CLI-Befehl zum Anzeigen dieser Zähler soll später hinzugefügt werden.

Hinweise zu Upgrades

Der RDPIP und der RDPPort, die zuvor auf dem virtuellen VPN-Server konfiguriert wurden, sind Teil des rdpServerProfile. Der rdp Profile wird in umbenannt rdp ClientProfile und der Parameter clientSSL wird entfernt. Daher funktioniert die frühere Konfiguration nicht.

Zustandsloser RDP-Proxy