Gateway

Zustandsloser RDP-Proxy

Der Stateless RDP-Proxy greift auf einen RDP-Host zu. Der Zugriff wird über RDPListener auf NetScaler Gateway gewährt, wenn sich der Benutzer auf einem separaten NetScaler Gateway Authenticator authentifiziert. Die vom RDPListener für NetScaler Gateway benötigten Informationen werden sicher auf einem STA-Server gespeichert. Ein STA-Server kann überall platziert werden, solange das NetScaler 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 NetScaler 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 NetScaler 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 NetScaler Gateway-Authentifikator authentifiziert.

  • Die anfängliche /rdpproxy-URL und der RDP-Client sind mit einem anderen RDPListener NetScaler 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.
     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-->
    

    Konfigurieren Sie das RDP-Serverprofil auf dem virtuellen VPN-Server mit dem folgenden Befehl:

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

    Beispiel

     add vpn vserver v1 SSL 1.1.1.1 443 -rdpServerProfile rdp_server_prof  
     <!--NeedCopy-->
    

    Wichtig:

    • Derselbe STA-Server muss sowohl an das RDP-Authenticator-Gateway als auch an das Listener-Gateway gebunden sein.

    • Bei einem statuslosen RDP-Proxy validiert der STA-Server das STA-Ticket, das vom RDP-Client gesendet wird, um den RDP-Zielserver und die RDP-Benutzerinformationen abzurufen. Sie müssen den STA-Server zusätzlich zum virtuellen VPN-Server binden. Im folgenden Beispiel ist der RDP-Zielserver 1.1.1.0 und der virtuelle RDP-Listener-Gateway-Server 1.1.1.2.

         add vpn url url4 RDP2 "rdp://1.1.1.0/1.1.1.2:443"
     <!--NeedCopy-->
    

Konfigurieren Sie das Client-Profil auf dem Authenticator Gateway mit dem folgenden Befehl:

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. Only psk ist ein obligatorisches Argument und es muss derselbe PSK sein, der dem RDP-Serverprofil im RDP-Listener-Gateway hinzugefügt wurde.

  • 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
  • Erstellen Sie einen virtuellen 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 NetScaler-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