Histoires de BureauFamiliarisation avec le protocole RDP

Wes Miller

Le protocole RDP, Remote Desktop Protocol, vous permet d'accéder à des ordinateurs à distance. Il s'agit d'un outil très utile qui a sans aucun doute rendu de grands services à de nombreux administrateurs système au fil des années. Le protocole RDP fournit depuis longtemps une prise en charge de l'accès à distance qui ne cesse de s'améliorer. Il a été introduit en 1998 pour Windows NT 4.0 Terminal Server Edition

(TSE) et a évolué depuis avec quasiment chaque version de Windows®.

Sous Windows 2000, pratiquement tout le monde pouvait accéder facilement à un système serveur distant parce que les services Terminal Server avaient été introduits en tant que composant Windows facultatif et pouvaient être configurés pour vous permettre d'utiliser le système soit en tant que serveur Terminal Server soit pour ce que nous appelons aujourd'hui un Bureau à distance. Windows Server® 2003 et Windows XP offraient une fonctionnalité de Bureau à distance native, vous permettant de contrôler le système comme si vous y étiez. Aujourd'hui, j'utilise le Bureau à distance tous les jours pour accéder à distance au PC et au serveur de mon domicile, et pour utiliser mon unité Media Center Extender.

Windows XP et les versions ultérieures de Windows ont ajouté l'Assistance à distance, qui fournit une expérience similaire au Bureau à distance mais conçue pour permettre à un utilisateur local de demander l'assistance d'un utilisateur distant. Poursuivant l'évolution de la prise en charge de l'accès distant, Windows Vista® permet désormais aux utilisateurs distants d'offrir une Assistance à distance, si la Stratégie de groupe l'autorise.

Comme vous le verrez, le Bureau à distance améliore encore cette fonctionnalité puissante et vous apprécierez tout ce qu'elle a à offrir. Bien sûr, le Bureau à distance fait l'objet de certaines restrictions, mais il offre également de nombreux avantages. Examinons-les.

Le bon, le mauvais et le formidable

Sous Windows XP (à l'exception de l'Édition Media Center), la principale restriction réside dans le fait qu'un seul utilisateur interactif peut être connecté à la fois. Bien que la fonctionnalité de Changement rapide d'utilisateur de Windows XP permette la connexion simultanée de plusieurs utilisateurs, seul un utilisateur peut agir de façon interactive avec la souris ou le clavier, qu'il soit local à l'ordinateur ou distant. Avec les versions Windows Server (non exécutées en tant que serveurs Terminal Server), deux sessions de Bureau à distance peuvent se connecter simultanément. Pour vous connecter via le Bureau à distance à la session de console dans Windows Server 2003, vous devez lancer l'application de client des Services Terminal Server (MSTSC.exe) avec le paramètre /console en option. La session de console est très importante parce que certaines applications plus anciennes, qui n'ont pas été conçues pour prendre en compte les sessions des services Terminal Server, font souvent apparaître les boîtes de dialogue uniquement sur la session de console (Session 0). La figure 1 illustre un utilisateur connecté à la session de console sur Windows Server 2003. Windows XP et le Bureau à distance Windows Server 2003 appliqueront l'attribution de licences de façon à garantir que seul le nombre d'utilisateurs autorisés est connecté de façon interactive.

Figure 1 Connecté à la session 0

Figure 1** Connecté à la session 0 **(Cliquer sur l'image pour l'agrandir)

Par ailleurs, la bande passante du réseau et la Stratégie de groupe peuvent affecter l'expérience de Bureau à distance. Windows XP est capable de fournir une résolution atteignant 24 bits, ainsi qu'une redirection du son, des imprimantes locales, des disques et du presse-papiers pour couper et coller. Du fait du mode de fonctionnement du Bureau à distance pour la création de l'écran, la suppression des éléments graphiques de la session à distance (thèmes, arrière-plans et ainsi de suite) améliore considérablement la bande passante réseau disponible et par conséquent, la session répond beaucoup mieux à l'utilisateur. Windows Vista optimise cette capacité de Windows XP en ajoutant une résolution de 32 bits et une redirection de périphériques supplémentaires.

Notez que certains éléments, tels que les opérations impliquant un grand nombre de graphismes, peuvent présenter des difficultés même pour les meilleures sessions de Bureau à distance s'il n'y a pas suffisamment de bande passante.Prévoyez donc en conséquence.

Nouvelles fonctionnalités dans Windows Vista

Windows Vista propose des modifications significatives du Bureau à distance. Comme mentionné précédemment, la résolution d'affichage 32 bits et le lissage des polices sont deux des modifications les plus visibles. Autre amélioration apparentée : la possibilité d'exécuter des sessions Windows Vista sur plusieurs moniteurs, en lançant le client des services Terminal Server avec la commande /span. Notez que la commande /span fonctionne uniquement avec les systèmes d'hôte distant Windows Vista, qu'elle requiert une résolution sur le client identique sur tous les moniteurs et qu'elle nécessite que les moniteurs soient alignés. La répartition de l'affichage sur plusieurs moniteurs fonctionne en traitant le système distant (le client) comme un seul affichage de grande taille. Cela signifie que l'agrandissement d'une application peut entraîner des effets inattendus, notamment le positionnement inapproprié de boîtes de dialogue, qui doivent être déplacées par l'utilisateur.

Par ailleurs, si le client à partir duquel vous vous connectez est un client Windows Vista et que le système distant est un système Windows Vista, vous pouvez exécuter l'interface utilisateur de la session distante dans le mode Windows Aero™ Glass (dans la mesure où le système local prend en charge Aero Glass, même si ce n'est pas le cas pour le système distant). Ceci est dû au remaniement de l'architecture du Bureau à distance Windows visant à exécuter la plupart des opérations de gestion de fenêtre sur le système client si le client est Windows Vista, ce qui permet d'améliorer l'expérience utilisateur tout en réduisant l'utilisation de la bande passante.

Windows Vista offre également une amélioration clé de la sécurité, l'authentification NLA. L'authentification NLA peut vous aider à empêcher les attaques par un intermédiaire où un utilisateur non autorisé usurpe le serveur auquel vous croyez être connecté. L'authentification NLA améliore également l'expérience d'authentification en ne lançant pas l'interface utilisateur Windows complète pour l'authentification : ceci minimise l'impact sur le système distant et réduit la sensibilité aux attaques par déni de service. L'authentification NLA requiert Windows Vista sur le client et sur le système distant. La figure 2 indique comment spécifier à l'aide du client RDP 6.0 si vous souhaitez mettre en place l'authentification, avertir ou si vous n'en avez pas besoin du tout. Notez que si vous vous connectez à un système distant qui exécute une version de Windows antérieure à Windows Vista, vous devez vous assurer qu'il est configuré pour vous avertir au moins pour cette connexion, sans quoi, la connexion échouera.

Figure 2 Préférences de connexion avancées

Figure 2** Préférences de connexion avancées **(Cliquer sur l'image pour l'agrandir)

La redirection améliorée des ressources (non limitée aux lecteurs et imprimantes) est une autre amélioration clé du protocole RDP dans Windows Vista. Dans la mesure où les pilotes sont présents sur le système distant et où le périphérique prend en charge la redirection, vous pouvez rediriger plusieurs nouveaux types de périphériques, y compris les cartes à puce. D'autres types de périphériques peuvent être pris en charge par leurs fournisseurs.

Windows Vista prend également en charge les serveurs de passerelle via le client RDP 6.0. Ceci permet aux utilisateurs de se connecter de façon transparente à des systèmes distants via Internet sans avoir besoin d'une connexion VPN ou de logiciel tiers. La figure 3 illustre les paramètres de serveur de passerelle des services Terminal Server. Le serveur de passerelle peut être comparé au VPN, sinon qu'il ne nécessite aucun logiciel client spécifique autre que le logiciel client RDP 6.0 (pas besoin de paramètres VPN ou de logiciel propriétaire).

Figure 3 Paramètres de serveur de passerelle des services Terminal Server

Figure 3** Paramètres de serveur de passerelle des services Terminal Server **(Cliquer sur l'image pour l'agrandir)

Windows Vista inclut également l'infrastructure nécessaire à une nouvelle fonctionnalité appelée RemoteApp™. Voici à quoi RemoteApp peut vous servir. Le Bureau à distance vous permet généralement de vous connecter à une session Windows entière. Mais supposez que vous ayez besoin d'exécuter uniquement Microsoft® Word ou Microsoft PowerPoint®. RemoteApp vous permet de le faire. Des scénarios destinés à permettre un partage d'applications robuste seront également disponibles dans Windows Server 2008.

De plus, une nouvelle prise en charge a été ajoutée dans Windows Vista pour l'API de partage de bureau Windows, qui permet la publication d'applications de collaboration partagées. Un exemple d'application mis à votre disposition par l'équipe des services Terminal Server de Microsoft à l'adresse blogs.msdn.com/ts/ archive/2007/03/23/writing-a-desktop-sharing-application.aspx illustre le fonctionnement de l'API de partage de bureau Windows.

Modification importante à noter dans Windows Vista et versions ultérieures : la session 0 (traditionnellement la session de console, où les applications héritées font apparaître des messages de boîte de dialogue) n'est généralement pas accessible à l'utilisateur. Ceci réduit l'interactivité entre les services système (exécutés dans la session 0, bien que d'une façon non interactive) et les utilisateurs interactifs. Ceci permet également de réduire la surface d'attaque posée par les services dotés de privilèges trop nombreux et les utilisateurs interactifs dans Windows Vista, où l'accent est mis sur la réduction des privilèges (avec le contrôle des comptes utilisateur et d'autres améliorations de la sécurité). Vous ne devez normalement pas vous en soucier, à moins que vous n'exécutiez un logiciel hérité sur Windows Vista et qu'il ne fonctionne pas correctement lors de son installation ou de son exécution.

Où trouver le Bureau à distance

Il est essentiel de savoir où le Bureau à distance peut être utilisé. Windows XP Professionnel, l'Édition Media Center et l'édition Tablet PC incluent tous la fonctionnalité de Bureau à distance, de même que toutes les versions de Windows Server 2003. Windows Vista inclut la fonctionnalité de Bureau à distance dans les éditions Professionnel, Entreprise et Intégrale. Les éditions familiales de Windows, notamment Windows XP Édition familiale, et toutes les éditions familiales de Windows Vista, n'incluent pas la fonctionnalité de Bureau à distance.

Client des services Terminal Server

Vous pouvez trouver le nouveau client RDP 6.0 à l'adresse go.microsoft.com/fwlink/?LinkId=91612. Comme mentionné plus haut, le client inclut toutes les fonctionnalités nécessaires pour la connexion à un système RDP 6.0 (Windows Vista ou Windows Server 2008).

La figure 4 illustre le client RDP 6.0. La possibilité de mettre en cache les informations d'authentification représente une amélioration significative dans MSTSC et, si vous vous connectez depuis Windows Vista vers Windows Vista ou Windows Server 2008, même l'authentification unique est prise en charge par la Stratégie de groupe.

Figure 4 Client RDP 6.0

Figure 4** Client RDP 6.0 **(Cliquer sur l'image pour l'agrandir)

La version 6.0 de MSTSC.exe compte de nombreux paramètres de ligne de commande, répertoriés ci-dessous. Examinons-les un par un.

mstsc [<connection file>] [/v:<server[:port]>]
[/console] [/f[ullscreen]] [/w:<width>] [/h:<height>]
[/public] | [/span] [/edit "connection file"] [/migrate] [/?]

/v:<serveur[:port]> spécifie l'ordinateur distant auquel vous souhaitez vous connecter, ainsi qu'une valeur de port facultative (le port 3389, port par défaut, peut être modifié sur toutes les versions de Windows).

/console vous permet de vous connecter à la session de console de versions antérieures de Windows. Ce paramètre ne fonctionne pas avec Windows Vista ou Windows Server 2008.

/f démarre la connexion Bureau à distance en mode plein écran.

/w:<largeur> spécifie la largeur de la fenêtre de connexion Bureau à distance.

/h:<hauteur> spécifie la hauteur de la fenêtre du Bureau à distance.

/public exécute la connexion Bureau à distance en mode public. Dans le mode public, le client RDP ne met pas de données en cache sur le système local. Utilisez le mode public, par exemple, lorsque vous vous connectez à un serveur d'entreprise depuis un système situé dans un centre de conférences.

Autres merveilles des services Terminal Server

Vous ignorez peut-être que deux autres technologies Microsoft utilisent des composants des services Terminal Server pour exécuter leurs prouesses. Le Changement rapide d'utilisateur dans Windows XP et Windows Vista permet à plusieurs utilisateurs de se connecter sur le même système, mais passe rapidement d'un contexte utilisateur à un autre sans forcer les utilisateurs à se déconnecter. Windows Media Center (et Windows Vista) exploite cette infrastructure pour permettre aux unités Media Center Extender, qui correspondent en fait à un terminal client léger disposant d'une technologie de rendu et de codecs audio/vidéo, de se connecter et d'afficher l'environnement Media Center à distance sur un téléviseur par le biais d'une connexion câblée ou sans fil. Dans Windows XP, il s'agit généralement de scénarios non métier, puisque ces deux technologies nécessitent un système qui n'est pas joint à un domaine et dans lequel le changement rapide d'utilisateur est activé. N'oubliez pas que toutes deux sont disponibles dans les éditions Windows Vista professionnelles, bien que les scénarios d'utilisation ne soient pas vraiment appropriés au contexte de l'entreprise, raison pour laquelle je ne suis pas vraiment rentré dans les détails.

/span conserve la largeur et la hauteur du bureau virtuel local sur le bureau à distance, en répartissant l'affichage sur plusieurs moniteurs au besoin. Notez que les moniteurs doivent tous avoir la même hauteur et être alignés côte à côte.

/edit ouvre le fichier de connexion rdp spécifié pour le modifier. Les fichiers RDP servent à stocker les informations de connexion pour un système distant spécifique.

/migrate déplace les anciens fichiers de connexion créés avec le Gestionnaire de connexion client vers de nouveaux fichiers de connexion .rdp.

Un grand nombre des améliorations apportées au client MSTSC sont également disponibles lors de l'utilisation du contrôle ActiveX® des services Terminal Server, de même que lors de l'utilisation de TSMMC.msc, décrit plus bas, pour se connecter à plusieurs systèmes depuis la même console.

Nouvelles fonctionnalités dans Windows Server 2008

Outre les fonctionnalités et modifications déjà mentionnées pour Windows Vista, Windows Server 2008 inclut ses propres fonctions de Bureau à distance : Terminal Services Web Access et Terminal Services Easy Print.

TS Web Access permet d'utiliser un navigateur Web pour consulter une liste des programmes qui ont été activés sur le serveur distant en tant qu'applications à distance et de les lancer d'un simple clic grâce au contrôle ActiveX du Bureau à distance. D'une certaine façon, l'expérience est semblable à celle de la virtualisation d'applications SoftGrid dont j'ai parlé dans mon article du mois dernier consacré à Microsoft Desktop Optimization Pack, où un utilisateur distant lance une application en toute facilité sans qu'un logiciel installé localement soit nécessaire. Il sera intéressant, au cours des prochaines années, de comparer les scénarios d'utilisation des technologies SoftGrid à ceux des technologies des services Terminal Server.

TS Easy Print permet de rediriger vers le système local (client) toutes les tâches d'impression lancées sur le système distant (hôte). Vous pensez peut-être que la redirection d'imprimante offre déjà cette fonctionnalité, mais ce n'est pas le cas. Easy Print fonctionne sans que des pilotes d'imprimante supplémentaires ne soient nécessaires sur le système hôte ou sans aucune interactivité de la part de l'utilisateur pour installer le périphérique. S'il y a une imprimante locale, elle fonctionne de la même façon sur le système distant et localement. Pour qu'Easy Print fonctionne, le système distant doit exécuter Windows Server 2008, et les systèmes clients et serveurs doivent exécuter le client des services Terminal Server 6.1 et avoir installé Microsoft .NET Framework 3.0 SP1. Tous deux devraient être disponibles en même temps que Windows Server 2008.

Conseils pour l'utilisation du Bureau à distance

Comme je l'ai mentionné précédemment, j'utilise le Bureau à distance, ou plutôt le composant MMC (Microsoft Management Console) du Bureau à distance, tous les jours. En ajoutant ici des systèmes distants sous la forme de nœuds, vous pouvez basculer rapidement et facilement entre plusieurs systèmes depuis la même interface utilisateur. La figure 5 illustre l'environnement utilisateur MMC. Le composant logiciel enfichable MMC fait partie du pack des outils d'administration Windows Server 2003, dont la dernière version est disponible à l'adresse go.microsoft.com/fwlink/?LinkId=91685.

Figure 5 Page MMC

Figure 5** Page MMC **(Cliquer sur l'image pour l'agrandir)

Une autre astuce que j'ai remarquée concerne les opérations couper-coller. Les opérations couper-coller sur le client et le serveur sont apparues avec Windows XP. Pour qu'elles fonctionnent, le client et le serveur doivent tous les deux exécuter Windows XP et le presse-papiers doit être redirigé (voir la figure 6). Les clients Windows Vista prennent également en charge les opérations couper-coller lorsque la redirection du presse-papiers est activée pour la connexion.

Figure 6 Paramètres des ressources locales

Figure 6** Paramètres des ressources locales **(Cliquer sur l'image pour l'agrandir)

Il est également important de noter que les raccourcis clavier dont vous risquez d'avoir besoin, tels que Ctrl + Alt + Suppr, ne sont pas transmis via le réseau au système distant : ils agissent toujours sur le système local. Pour envoyer Ctrl + Alt + Suppr vers le système distant, appuyez sur Ctrl + Alt + Fin sur le client.

Pour finir, je vous recommande de consulter régulièrement le blog de l'équipe des services Terminal Server de Microsoft à l'adresse blogs.msdn.com/ts. C'est en tout cas ce que je fais.

Personnellement, je trouve que le Bureau à distance et les services Terminal Server me facilitent énormément la vie, à tel point que j'ai du mal à l'imaginer sans eux. J'espère que cet article vous aura fourni un bon aperçu des nouvelles fonctionnalités du client RDP 6.0 et de Windows Vista et Windows Server 2008.

J'aimerais remercier Nelly Porter, responsable de programme principale au sein de l'équipe des services Terminal Server, pour son aide à la préparation de cet article.

Wes Miller est responsable du développement chez Pluck (www.pluck.com) à Austin, au Texas. Auparavant, il a travaillé chez Winternals Software à Austin et chez Microsoft en tant que responsable de programme et responsable de produit pour Windows. Vous pouvez contacter Wes à l’adresse suivante : technet@getwired.com.

© 2008 Microsoft Corporation et CMP Media, LLC. Tous droits réservés. Toute reproduction, totale ou partielle, est interdite sans autorisation préalable.