Citrix Gateway

Proxy RDP

La fonctionnalité de proxy RDP est fournie dans le cadre de Citrix Gateway. Dans un déploiement standard, le client RDP s’exécute sur la machine d’un utilisateur distant. L’appliance Citrix Gateway est déployée dans la zone démilitarisée et la batterie de serveurs RDP se trouve dans le réseau interne de l’entreprise.

L’utilisateur distant ;

  1. se connecte à l’adresse IP publique Citrix Gateway
  2. établit une connexion VPN SSL
  3. authentifie
  4. accède aux postes de travail distants via l’appliance Citrix Gateway

La fonctionnalité RDP-proxy est prise en charge en mode VPN sans client et proxy ICA.

Remarque :

Citrix Gateway ne prend pas en charge les sessions RDSH (Remote Desktop Session Host), Remote App, RDS multi-utilisateurs ou RDP.

Les fonctionnalités de proxy RDP suivantes permettent d’accéder à une batterie de postes de travail distants via Citrix Gateway.

  • Sécurisez le trafic RDP via un VPN sans client ou un mode proxy ICA (sans tunnel complet).

  • SSO (authentification unique) vers les serveurs RDP via Citrix Gateway. Fournit également une option permettant de désactiver l’SSO si nécessaire.

  • Fonction d’application (SmartAccess), dans laquelle les administrateurs Citrix ADC peuvent désactiver certaines fonctionnalités RDP via la configuration de Citrix Gateway.

  • Solution de passerelle unique/sans état (double) pour tous les besoins (VPN/ICA/RDP/Citrix Endpoint Management).

  • Compatibilité avec le client Windows MSTSC natif pour RDP sans avoir besoin de clients personnalisés.

  • Utilisation d’un client RDP fourni par Microsoft sur MACOSX, iOS et Android.

La figure suivante présente une vue d’ensemble du déploiement :

Vue d'ensemble du proxy RDP

Déploiement via un VPN sans client

Dans ce mode, les liens RDP sont publiés sur la page d’accueil ou le portail de la passerelle, sous forme de signets, via la add vpn url configuration ou via un portail externe. L’utilisateur peut cliquer sur ces liens pour accéder au Bureau à distance.

Déploiement via le proxy ICA

Dans ce mode, une page d’accueil personnalisée est configurée sur le VIP de passerelle à l’aide du paramètre wihome. Cette page d’accueil peut être personnalisée avec la liste des ressources Bureau à distance auxquelles l’utilisateur est autorisé à accéder. Cette page personnalisée peut être hébergée sur Citrix ADC ou, si elle est externe, elle peut être un iFrame dans la page du portail Gateway existante.

Dans les deux modes, une fois que l’utilisateur a cliqué sur le lien ou l’icône RDP provisionné, une demande HTTPS pour la ressource correspondante arrive à Citrix Gateway. La passerelle génère le contenu du fichier RDP pour la connexion demandée et le pousse vers le client. Le client RDP natif est appelé et il se connecte à un écouteur RDP sur la passerelle. Gateway effectue une connexion unique vers le serveur RDP en prenant en charge l’application (SmartAccess). La passerelle bloque l’accès du client à certaines fonctionnalités RDP, en fonction de la configuration Citrix ADC, puis elle proxie le trafic RDP entre le client RDP et le serveur.

Détails de l’application

L’administrateur Citrix ADC peut configurer certaines fonctionnalités RDP via la configuration Citrix Gateway. Citrix Gateway fournit la fonctionnalité « application RDP » pour les paramètres RDP importants. Citrix ADC garantit que le client ne peut pas activer les paramètres bloqués. Si les paramètres bloqués sont activés, la fonctionnalité d’application RDP remplace les paramètres activés pour le client et ils ne sont pas respectés.

Important : La fonctionnalité d’application n’est applicable que si l’authentification unique est activée.

Paramètres RDP pris en charge pour l’application

L’application des paramètres de redirection suivants est prise en charge. Ces paramètres sont configurables dans le cadre d’un profil client RDP.

  • Redirection du presse-papiers

  • Redirection des imprimantes

  • Redirection des unités de disque

  • Redirection des ports COM

  • Redirection des périphériques PNP

Flux de connexion

Le flux de connexion peut être divisé en deux étapes :

  • Énumération des ressources RDP et téléchargement de fichiers RDP.
  • Lancement de la connexion RDP.

Sur la base du flux de connexion précédent, il existe deux solutions de déploiement :

  • Solution de passerelle sans état (double) : l’énumération des ressources RDP et le téléchargement du fichier RDP s’effectue via la passerelle d’authentification, mais le lancement de la connexion RDP s’effectue via la passerelle d’écoute RDP.

  • Solution de passerelle unique : l’énumération des ressources RDP, le téléchargement de fichiers RDP et le lancement de la connexion RDP se produisent via la même passerelle.

Compatibilité avec la passerelle sans état (double)

La figure suivante illustre le déploiement :

Compatibilité avec deux passerelles

  • Un utilisateur se connecte à la VIP Authenticator Gateway et fournit les informations d’identification.

  • Une fois la connexion réussie à la passerelle, l’utilisateur est redirigé vers la page d’accueil ou le portail externe, qui énumère les ressources du poste de travail distant auxquelles l’utilisateur peut accéder.

  • Une fois que l’utilisateur a sélectionné une ressource RDP, la VIP Authenticator Gateway reçoit la demande au format https://vserver-vip/rdpproxy/rdptarget/listener indiquant la ressource publiée sur laquelle l’utilisateur a cliqué. Cette demande contient les informations relatives à l’adresse IP et au port du serveur RDP sélectionné par l’utilisateur.

  • La passerelle d’authentification traite la demande /rdpproxy/. Étant donné que l’utilisateur est déjà authentifié, cette demande est accompagnée d’un cookie Gateway valide.

  • Les RDPUser informations RDPTarget et sont stockées sur le serveur STA, et un ticket STA est généré. Les informations stockées sur le serveur STA sont cryptées à l’aide de la clé pré-partagée configurée. La passerelle Authenticator utilise l’un des serveurs STA configurés sur le serveur virtuel de passerelle.

  • Les informations ‘Listener’ obtenues dans la requête /rdpproxy/ sont placées dans le .rdp file « fulladdress » et le ticket STA (pré-ajouté avec l’AuthID STA) est placé dans .rdp file comme « loadbalanceinfo ».

  • Le paramètre .rdp file est renvoyé au point de terminaison du client.

  • Le client RDP natif se lance et se connecte au RDPListener Gateway. Il envoie le ticket STA dans le paquet initial.

    La passerelle RDPListener valide le ticket STA et obtient les informations RDPTarget et RDPUser. Le serveur STA à utiliser est récupéré à l’aide du ‘AuthID’ présent dans le loadbalanceinfo.

  • Une session de passerelle est créée pour stocker les stratégies d’autorisation/d’audit. Si une session existe pour l’utilisateur, elle est réutilisée.

  • La passerelle RDPListener se connecte à RDPTarget et ouvre une session unique à l’aide de CREDSSP.

Important :

  • Pour le proxy RDP sans état, le serveur STA valide le ticket STA, envoyé par le client RDP, pour obtenir les informations RDPTarget/RDPUser. Vous devez lier le serveur STA en plus du serveur virtuel VPN.

Compatibilité avec une passerelle unique

La figure suivante illustre le déploiement :

Compatibilité avec une passerelle unique

Important :

Dans le cas d’un déploiement de passerelle unique, le serveur STA n’est pas nécessaire. La passerelle d’authentification code le RDPTarget en toute sécurité le cookie de session d’authentification, d’autorisation et d’audit Citrix et les envoie en tant que loadbalanceinfo dans le .rdp file. Lorsque le client RDP envoie ce jeton dans le paquet initial, la passerelle d’authentification décode les informations RDPTarget, recherche la session et se connecte au RDPTarget.

Prise en charge de Single Listener

  • Un seul écouteur pour le trafic RDP et SSL.

  • Le téléchargement de fichier RDP et le trafic RDP peuvent être gérés via le même tuple 2 (c’est-à-dire IP et port) sur l’appliance Citrix ADC.

Exigences de licence pour le proxy RDP

Édition Premium, édition avancée

Remarque :

La fonction de proxy RDP n’est pas disponible pour les clients disposant uniquement d’une licence de plate-forme Gateway ou uniquement de l’édition Standard.

Vous pouvez utiliser la commande suivante pour activer le proxy RDP.

enable feature rdpProxy
<!--NeedCopy-->

Signet

Génération de liens RDP via Portal. Au lieu de configurer les liens RDP pour l’utilisateur ou de publier les liens RDP via un portail externe, vous pouvez donner aux utilisateurs la possibilité de générer leurs propres URL en fournissant targerIP:Port. Pour un déploiement proxy RDP sans état, l’administrateur peut inclure des informations sur l’écouteur RDP dans le format FQDN : Port dans le profil du client RDP. Cela se fait sous l’option rdpListener. Cette configuration est utilisée pour la génération de liens RDP via le portail en mode Dual Gateway.

Signet

Créer des signets

  1. Créez des signets sur la page du portail pour accéder aux ressources RDP : (L’URL actuelle commence par rdp://).

  2. Ajouter une URL VPN <urlName> <linkName>  <actualURL>

    • L’URL doit être au format suivant : rdp://<TargetIP:Port>.
    • Pour le mode proxy RDP sans état, l’URL doit être au format suivant : rdp://<TargetIP:Port>/<ListenerIP:Port>

    • L’URL est publiée sur le portail au format suivant : https://<VPN-VIP>/rdpproxy/<TargetIP:Port> https://<VPN-VIP>/rdpproxy/<TargetIP:Port>/<ListenerIP:Port>
  3. Liez les signets à l’utilisateur ou au groupe, au serveur virtuel VPN ou au VPN global.

Fonctionnalités et modes à activer pour le proxy RDP

-  enable ns feature ssl

-  enable ns feature sslvpn

-  enable ns feature rdpproxy

-  enable mode usnip
<!--NeedCopy-->

Étapes de configuration de haut niveau du proxy RDP

Les étapes de haut niveau suivantes impliquées dans la configuration du proxy RDP sans état.

  • Créer un profil de serveur RDP
  • Créer un profil client RDP
  • Création et liaison d’un serveur virtuel
  • Créer un signet
  • Créer ou modifier un profil ou une stratégie de session
  • Liez un signet

Configuration d’un profil client

Configurez le profil client sur la passerelle d’authentification. Voici un exemple de configuration :

add rdpClient profile <name> [-addUserNameInRdpFile ( YES | NO )] [-audioCaptureMode ( ENABLE | DISABLE )] [-keyboardHook <keyboardHook>] [-multiMonitorSupport ( ENABLE | DISABLE )] [-psk <string>] [-rdpCookieValidity <positive_integer>] [-rdpCustomParams <string>] [-rdpFileName <string>] [-rdpHost <optional FQDN that will be put in the RDP file as ‘fulladdress>] [-rdpUrlOverride ( ENABLE | DISABLE )] [-redirectClipboard ( ENABLE | DISABLE )] [-redirectComPorts ( ENABLE | DISABLE )] [-redirectDrives ( ENABLE | DISABLE )] [-redirectPnpDevices ( ENABLE | DISABLE )] [-redirectPrinters ( ENABLE | DISABLE )] [-videoPlaybackMode ( ENABLE | DISABLE )]
<!--NeedCopy-->

Associez le profil du client RDP au serveur virtuel VPN.

Cela peut être fait en configurant une SessionAction+SessionPolicy ou en définissant le paramètre VPN global.

Exemple :

add vpn sessionaction <actname> -rdpClientprofile <rdpprofilename>

add vpn sessionpolicy <polname> NS_TRUE <actname>

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

OU

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

Configurer un profil de serveur

Configurez le profil de serveur sur la passerelle d’écoute.

add rdp ServerProfile <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-->

Le rdp ServerProfile doit être configuré sur le serveur virtuel VPN.

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

Exemple de configuration

Configuration du proxy RDP à l’aide de l’interface de ligne de commande

Voici un exemple de configuration du proxy RDP à l’aide de l’interface de ligne de commande.

  • Ajoutez l’URL VPN de l’utilisateur avec les informations de la cible.

     add aaa user Administrator –password freebsd123$%^
    
     add vpn url rdp RdpLink rdp://rdpserverinfo
    
     add dns addrec rdpserverinfo 10.102.147.132
    
     bind aaa user Administrator  –urlName rdp
     <!--NeedCopy-->
    
  • Configurez le profil client et serveur RDP pour la connexion VPN.

     add rdp clientprofile p1 –psk citrix -redirectClipboard ENABLE
    
     add rdp serverprofile p1 -rdpIP 10.102.147.134 -psk citrix
    
     add vpn vserver mygateway SSL  10.102.147.134 443 –rdpserverprofile p1
    
     set vpn parameter -clientlessVpnMode ON -defaultAuthorizationAction ALLOW -rdpClientProfileName p1
    
     add ssl certKey gatewaykey -cert rdp_rootcert.pem  -key rdp_rootkey
    
     bind ssl vserver mygateway -certkeyName gatewaykey
     <!--NeedCopy-->
    
  • ADD SNIP pour la connexion de Citrix ADC à la cible.

     add ns ip 10.102.147.135  255.255.255.0 –type SNIP
     <!--NeedCopy-->
    

Configuration du proxy RDP à l’aide de l’interface graphique

  1. Accédez à Citrix Gateway > Stratégies, cliquez avec le bouton droit sur RDP, puis cliquez sur Activer la fonctionnalité.

  2. Cliquez sur RDP dans le volet de navigation. Sur la droite, sélectionnez l’onglet Profils client, puis cliquez sur Ajouter.

  3. Entrez un nom pour le profil client et configurez-le.

    Ajouter un nom pour le profil

  4. Dans le champ Hôte RDP, entrez le nom de domaine complet qui est résolu en écouteur proxy RDP, qui est généralement le même nom de domaine complet que le FQN de l’appliance Citrix Gateway.

  5. Dans Clé pré-partagée, saisissez un mot de passe et cliquez sur OK.

    Mot de passe de clé pré-partagée

  6. Entrez un nom pour le profil de serveur.

  7. Entrez l’adresse IP du serveur virtuel de passerelle auquel vous allez lier ce profil.

  8. Entrez la même clé prépartagée que celle que vous avez configurée pour le profil client RDP. Cliquez sur Créer.

    Saisir à nouveau le mot de passe de la clé pré

  9. Si vous souhaitez ajouter des signets RDP sur la page du portail Accès sans client, sur la gauche, développez Citrix Gateway, développez Ressources, puis cliquez sur Signets.

  10. Sur la droite, cliquez sur Ajouter.

  11. Donnez un nom au signet.

  12. Pour l’URL, saisissez rdp : //MyRDPServer en utilisant IP ou DNS.

  13. Sélectionnez Utiliser Citrix Gateway en tant que proxy inverse, puis cliquez sur Créer.

  14. Créez des signets selon vos besoins.

    Ajouter plusieurs signets

  15. Créez ou modifiez un profil de session. Accédez à Citrix Gateway > Stratégies > Session.

  16. Dans l’onglet Sécurité, définissez l’action d’autorisation par défaut sur AUTORISER. Vous pouvez également utiliser des stratégies d’autorisation pour contrôler l’accès.

    Définir l'action d'authentification par défaut

  17. Dans l’onglet Bureau à distance, sélectionnez le profil de client RDP que vous avez créé précédemment.

    Sélectionnez le profil du client RDP

  18. Si vous souhaitez utiliser des signets, sous l’onglet Expérience client, définissez Accès sans clientsur On.

    Définir l'accès sans client sur On

  19. Dans l’onglet Applications publiées, assurez-vous que le proxy ICA est désactivé.

    Définir le proxy ICA sur OFF

  20. Modifiez ou créez votre serveur virtuel de passerelle.

  21. Dans la section Paramètres de base, cliquez sur Plus.

    Définir les paramètres de base

  22. Utilisez la liste des profils de serveur RDP pour sélectionner le profil de serveur RDP que vous avez créé précédemment.

    Utiliser le profil de serveur RDP

  23. Faites défiler vers le bas. Assurez-vous que l’option ICA uniquement n’ est pas cochée.

    Désactivation de l'ICA uniquement

  24. Liez un certificat.

  25. Lier les stratégies d’authentification.

  26. Liez la stratégie/le profil de session sur lequel le profil client RDP est configuré.

    Stratégie de session de liaison

  27. Vous pouvez lier des signets au serveur virtuel Citrix Gateway ou à un groupe d’authentification, d’autorisation et d’audit. Pour vous lier au serveur virtuel Citrix Gateway, sur la droite, dans la section Paramètres avancés, cliquez sur Applications publiées.

    Cliquez sur les applications publiées

  28. Sur la gauche, dans la section Applications publiées, cliquez sur Aucune URL.

    Définir aucune URL

  29. Liez vos signets.

    Liez les signets

  30. Comme ICA uniquement n’est pas spécifié pour ce serveur virtuel Citrix Gateway, assurez-vous que vos licences Citrix Gateway Universal sont correctement configurées. Sur la gauche, développez Citrix Gateway et cliquez sur Paramètres globaux.

    Définir les paramètres globaux

  31. Sur la droite, cliquez sur Modifier les paramètres AAA d’authentification.

    Modifier les paramètres d'authentification

  32. Modifiez le nombre maximal d’utilisateurs en fonction de votre limite de licence.

    Définir le nombre maximal d'utilisateurs

  33. Si vous souhaitez vous connecter aux serveurs RDP à l’aide du DNS, assurez-vous que les serveurs DNS sont configurés sur l’appliance (Gestion du trafic > DNS > Serveurs de noms).

    Configurer les serveurs DNS

  34. Si vous souhaitez utiliser les noms courts au lieu des noms complets, ajoutez un suffixe DNS (Gestion du trafic > DNS > Suffixe DNS).

    Utiliser les noms de fqdns

  35. Connectez-vous à votre passerelle et ouvrez une session.

    Connexion à la passerelle

  36. Si vous avez configuré des signets, cliquez sur le signet.

    Cliquez sur les signets

  37. Vous pouvez modifier la barre d’adresse en /RDPProxy/MyRDPServer. Vous pouvez entrer une adresse IP (par exemple rdpproxy/192.168.1.50) ou un nom DNS (/rdpproxy/monserveur).

    Modifier la barre d'adresse

  38. Ouvrez le fichier téléchargé .rdp file.

    Télécharger le fichier RDP

  39. Vous pouvez afficher les utilisateurs actuellement connectés en accédant à Citrix Gateway Policies > RDP. Sur la droite se trouve l’onglet Connexions .

    Cliquez sur l'onglet Connexions

Option de désactivation de l’SSO

La fonctionnalité d’authentification unique (SSO) avec le proxy RDP peut être désactivée en configurant des stratégies de trafic Citrix ADC afin que l’utilisateur soit toujours invité à entrer ses informations d’identification. Lorsque l’accès SSO est désactivé, l’application RDP (SmartAccess) ne fonctionne pas.

Exemple :

add vpn trafficaction <TrafficActionName> HTTP -SSO OFF
<!--NeedCopy-->

La stratégie de trafic peut être configurée conformément aux exigences. Voici deux exemples :

  • Pour désactiver l’accès SSO pour tout le trafic, procédez comme suit :

     add vpn trafficpolicy <TrafficPolicyName>  "url contains rdpproxy" <TrafficActionName>
     <!--NeedCopy-->
    
  • Pour désactiver l’accès unique en fonction de l’adresse IP source/destination/nom de domaine complet

     add vpn trafficPolicy <TrafficPolicyName>  "HTTP.REQ.URL.CONTAINS("rdpproxy") && CLIENT.IP.SRC.EQ(<IP>)" <TrafficActionName>
     bind vpnvserver rdp -policy <TrafficPolicyName> -priority 10
     <!--NeedCopy-->