Alors, pour cette année, Citrix or not Citrix ?


S’il y a des choses dont on ne se lasse jamais en informatique, c’est de ces grands débats sans fin, relancés généralement à chaque nouvelle génération de Windows Server. Une de ces fameuses discussions concerne les services terminaux de Windows Server, et de savoir si « finalement » ils vont pouvoir remplacer nos infrastructures Citrix.

Ce débat est motivé par le coût supplémentaire que nécessite Citrix pour être déployé, toutefois largement compensé par l’économie réalisée sur la gestion du poste de travail. Mais comme un coût est un coût, si on pouvait faire du Citrix sans Citrix, que le monde serait idéal. Je me souviens d’une présentation faite par Microsoft aux US, lors de la sortie de Windows Server 2003, où le speaker (pur produit de Microsoft Corp.) avait glissé ce slide à la fin de sa présentation, ce qui est très honorable de sa part.

Citrix vs TSE

A la question « Que fait de mieux Citrix par rapport à Terminal Server », la réponse est sans appel et ne mérite généralement pas un débat approfondi : Tout ! :-) . Pour analyser simplement la situation, il suffit de vérifier les fonctionnalités apportées par les services terminaux de Windows Server 2008 pour savoir si à elles seules elles conviennent à votre environnement. C’est ce que vous propose la première partie de cet article.

Mais quant à vouloir comparer les solutions de client léger (ou pour les amateurs d’anglicisme, les Server Based Computing (SBC) solutions), autant le faire totalement. En dehors de Citrix et de Microsoft, il existe un grand nombre de compétiteurs de talents, généralement moins sous les feux de la rampe, car le marketing des deux sociétés multimilliardaires laisse peu de place pour crier son droit à l’existence. Peut-être que pour certains d’entres-vous (comme moi, nous nous reconnaissons grâce à nos cheveux blancs) se rappelleront-ils du nom de Tarantella ou reconnaîtront avoir passé de longues heures à essayer de le configurer ? Ces alternatives sont nombreuses et méritent d’être présentées dans une deuxième partie de cet article.

1ère partie : Nouveautés des services terminaux dans Windows Server 2008

Tout d’abord, c’est une réalité : la dernière version du système d’exploitation serveur apporte de nombreuses nouveautés pour les services terminaux. Microsoft a cherché à la fois à améliorer les fonctionnalités de base mais aussi à apporter des solutions concrètes à ce que les utilisateurs peuvent attendre de ce type de service.

Ce message s’adresse à toi, lecteur Citrix. Ne soit pas vexé, mais je crois qu’une partie des fonctionnalités qui faisaient ta joie et ta différence est désormais intégrée dans la base du produit. Toutefois, reconnaissons que si Microsoft progresse dans les fonctions apportées par TS, c’est grâce à Presentation Server et aux équipes de R&D de Citrix. Ceci explique pourquoi Microsoft ne rechigne pas (après renégociation sévère) à autoriser Citrix à développer sur les évolutions du noyau de Windows Server, à chaque génération produit.

Parmi les nouveautés des Terminal Services, on peut principalement lister les améliorations suivantes :

- Terminal Services Gateway, une méthode d’encapsulation SSL du flux RDP permettant un accès unique à l’ensemble des serveurs et machines en RDP depuis une seule adresse de manière sécurisé évitant ainsi l’utilisation d’un VPN ;

- Terminal Services RemoteApp, qui permet de déployer sur le poste client l’affichage d’applications et non pas du bureau complet de l’utilisateur ;

- Terminal Services EasyPrint, une méthode qui permet de résoudre les nombreux problèmes de drivers d’impression lors des connexions clients grâce à l’utilisation d’un driver unifié ;

- Terminal Services Web Access, qui permet de déployer les RemoteApp sur une page Web avec un WebPart ;

- Terminal Services Session Broker, qui améliore la reconnexion des utilisateurs connectés à une ferme de serveurs TS.

Nous en profiterons pour aborder trois autres éléments essentiels des services TS de Windows Server 2008 : la gestion des licences Terminal Services, l’utilisation avec Windows System Ressource Manager et PowerShell.

Les fonctionnalités de base

Grâce au client RDP 6.x, de nombreuses fonctionnalités sont désormais disponibles. Même si elles permettent d’augmenter les options de connexion avec Terminal Services sur Windows 2003, elles prennent tout leur sens avec l’utilisation du bureau à distance de Vista ou des services TS de Windows Server 2008.

Ainsi, le nouveau client RDP permet :

- Le multi écran : on peut maintenant avoir une session TS qui s’étend sur plusieurs écrans. La seule contrainte est que les écrans doivent être alignés à l’horizontal et avoir la même résolution ;

- La gestion de résolutions plus importantes (jusqu’à 1920×1200) ainsi que la gestion des écrans larges 16/10ème ;

- La composition du bureau pour permettre l’utilisation d’Aéro dans la session Terminal Services. L’ensemble des opérations de rendu se fait intégralement sur le client, déchargeant ainsi un maximum de ressources réseaux et système au serveur ;

- Le lissage des polices ;

- La priorisation des flux : l’ensemble des informations transmis est encapsulé dans des flux virtuels puis multiplexé pour transiter sur le réseau. On trouvera un flux pour le clavier, un flux pour l’écran, un flux pour les transferts de fichiers, un pour l’impression, etc. Les flux correspondant au clavier, à la souris et l’affichage sont maintenant prioritaires sur les transferts de fichiers et les travaux d’impression pour permettre une meilleure réactivité ;

-La rediction des périphériques : un certain nombre de périphériques spécialisés (utilisant .NET) sont maintenant redirigeables.

Une des faiblesses de Windows Terminal Services est qu’il était impossible d’authentifier le serveur avant d’y accéder jusqu’alors. Désormais, pour augmenter la sécurité, le serveur peut s’authentifier auprès du client avant que celui-ci ne s’authentifie sur le serveur. Cet ajout de sécurité se fait par Kerberos lorsque c’est possible ou par un certificat. Ainsi, l’authentification mutuelle du client et du serveur se fait avant la connexion. On peut bien entendu stocker ses identifiants de connexion avec RDP 6.x, ce qui évite d’avoir à les ressaisir à chaque connexion, et bénéficier ainsi d’un mécanisme de SSO (Single Sign On).

Terminal Services Gateway

Publier un serveur Terminal Services directement sur Internet n’est pas forcément une excellente idée. Jusqu’à présent il était conseillé d’utiliser une connexion VPN pour l’accès aux serveurs TS pour rendre la connexion sécurisée et permettre l’accès à l’ensemble des ressources. Cette méthode a le désavantage d’être plus lourde à mettre en œuvre puisqu’il faut lancer à la fois le VPN puis le client RDP.

Windows 2008 introduit la passerelle Terminal Services (Terminal Services Gateway) qui permet de sécuriser l’accès aux serveurs TS ou aux machines avec le bureau à distance activé. La passerelle Terminal Services joue le rôle de terminaison SSL au flux RDP. Ainsi le client se connecte au Terminal Services Gateway de manière sécurisé pour accéder à l’ensemble des ressources Terminal Services de l’entreprise. Le flux RDP est encapsulé dans le protocole HTTPS puis arrive sur la passerelle, celle-ci faisant transiter le flux RDP directement au serveur à joindre.

La passerelle Terminal Services permet aussi le contrôle d’accès aux ressources. On définit qui a le droit d’accéder à la passerelle et par quelle méthode (mot de passe ou carte à puce) et qui a le droit d’accéder à tel groupe de machines. Ces stratégies sont appelées « TS CAP » pour Connection Authorization Policies. Les groupes de machines sont quant à eux appelés « TS RAP » pour Ressource Authorization Policies.

En dehors des stratégies d’accès, on peut aussi contrôler dans les TS CAP la désactivation des redirections (lecteurs, son, presse-papier, etc.).

Art8Img2

La passerelle Terminal Services Windows 2008 est compatible NAP. NAP (Network Access Protection) est un ensemble de composants pour la protection du réseau, intégré à Windows XP SP3 et Windows Vista. Il permet de contrôler l’accès au réseau en fonction de l’état de santé du client. Par exemple on peut interdire l’accès à la passerelle dans le cas où le client n’a pas activé les mises à jour automatiques ou n’est pas à jour, qu’il n’a pas d’antivirus ou de firewall ou d’antispyware etc. Microsoft NAP est extensible avec les solutions que des éditeurs tiers pourront fournir (par exemple un logiciel de pare-feu non Microsoft pourra vérifier qu’une règle est appliquée). Ceci peut être très utile pour éviter les propagations virales sur des postes qu’on ne contrôle pas.

Voici les étapes de connexion d’un client :

- Ouverture du client RDP
- Saisie de l’adresse interne du serveur TS ou de la machine à joindre
- Saisie de l’adresse de la passerelle TS
- Configuration des options éventuelles
- Saisie du login et mot de passe pour la passerelle
- Saisie du login et mot de passe pour le serveur TS (dans Vista SP1 ces 2 étapes peuvent être faites en une seule fois si les logins sont identiques)
- Connexion
=> Envoi des informations d’authentification de la passerelle
=> Vérification des informations (les TS CAP)
=> Si besoin, envoi de l’état de santé du client
=> Vérification des informations
=> Vérification de la demande d’accès à la ressource (TS RAP)
=> Connexion au serveur TS (avec vérification auprès du client de l’identité du serveur)

Les avantages de TS Gateway sont :

- Plus besoin de VPN pour l’accès sécurisé aux serveurs TS
- Encapsulation dans un protocole largement utilisé (HTTPS)
- Point d’entrée unique (sauf en cas de ferme de TS Gateway) à l’ensemble des ressources TS de l’entreprise (utile dans le cas de NAT où on veut publier plusieurs serveurs TS).
- Un meilleur contrôle des sessions TS
- Réduction des coûts de management

RemoteApp

Une des fonctionnalités qui manquait aux services terminaux de Windows Server jusqu’à présent était le « Seamless Windows ». Cette fonction utile permet de déporter sur le client TS uniquement la fenêtre d’une application plutôt que la totalité du bureau. Cette propriété est désormais intégrée sous le nom de RemoteApp avec les services TS Windows 2008. Il suffit de configurer les applications à publier, créer les fichiers .rdp qui serviront à lancer le programme sur le poste client et diffuser ceux-ci aux personnes concernées.

On peut également publier des packages au format .msi. L’avantage est de permettre l’installation des applications TS par le biais de GPO (Group Policies Object) ou au travers de tout autre logiciel de télédistribution. Les fichiers .msi permettent aussi la création d’entrées dans le Menu Démarrer ou directement sur le Bureau de l’utilisateur ainsi que permettre l’ouverture des documents directement sur le poste client à partir du moment où l’application a été publiée. Par exemple, si on publie Microsoft Word 2007 par le biais d’un fichier .msi, il suffira de d’ouvrir le document sur le poste client pour que l’application Word 2007 soit lancée sur le serveur TS Windows 2008.

RemoteApp présente néanmoins un problème potentiel de sécurité : puisque seule l’application est déportée, on peut imaginer l’utilisation de fausses applications avec la même interface qui serviraient à recueillir les mots de passe de l’utilisateur (faux Live Messenger, faux logiciel métier). Pour faire face à cette menace, il est possible de signer numériquement ses applications RemoteApp. L’utilisateur est ainsi au courant de la validité de l’application (même mécanisme que l’UAC lors de l’exécution d’applications signées ou non).

Terminal Services Web Access

En plus de la publication des RemoteApp par les fichiers .rdp ou les packages .msi, il est possible de publier les raccourcis dans un WebPart depuis un site Sharepoint ou sur un serveur IIS 7. Les utilisateurs peuvent ainsi lancer l’application distante depuis un simple navigateur Internet quelque soit l’endroit et la nature du poste de travail. Il faut noter que le WebPart affiche tous les raccourcis qu’un serveur ou qu’une ferme de serveurs TS publie. Il faudra donc créer plusieurs WebParts pour isoler des applications à publier. Les versions intermédiaires ont intégré cette fonction, mais celle-ci a été jugée trop complexe pour être retenue dans la version finale. De même, dans la version RC0, seuls les clients Windows Vista SP1 Beta et Windows Server 2008 (exécutant RDP 6.1 – Remote Desktop Protocol) pouvaient utiliser le service TS Web Access.

TSweb

EasyPrint

Une des plus gros problèmes avec les services TS Windows était la gestion des impressions. En effet, pour disposer du meilleur rendu, il est nécessaire que les imprimantes soient reconnues par le serveur et le client. Les drivers doivent être installés sur les 2 postes, ce qui pose des problèmes avec les migrations en 64 bits, la multiplicité des imprimantes des clients, etc.

Citrix avait aussi un avantage considérable sur ce point, mais Microsoft intègre dorénavant une solution pour une impression facilitée, au travers de l’utilisation du format de fichier .xps (XML Paper Specification). Ce format, déjà utilisé par Word 2007 est une forme particulière du langage XML (Extensible Markup Language) adaptée aux spécifications d’impression. Pour prendre un exemple, lors de l’impression d’un document, le document est transformé en fichier .xps puis transite sur le réseau pour être ensuite converti sur le poste client en impression sur l’imprimante. De cette manière, on dispose d’une méthode universelle d’impression, quelque soit l’imprimante, quelque soit le pilote (x86 ou x64). L’impression avec Easy Print reste toutefois optionnelle, et rien n’empêche de continuer à utiliser l’ancienne méthode d’impression.

Terminal Services Session Broker

Précédemment dans Windows 2003, si vous désiriez faire une ferme de serveurs de services terminaux, vous deviez utiliser le service NLB (Network Load Balancing) de Windows Server 2003. Pour conserver les sessions lors d’une déconnexion, un service appelé Terminal Service Directory permettait de réorienter le client vers un serveur qui hébergeait sa session.

Windows Server 2008 propose une nouvelle solution. La différence majeure est qu’il n’est plus obligatoire d’utiliser NLB. La solution repose sur un round robin DNS (ou l’utilisation d’un équipement de partage de charge matériel). Il suffit d’enregistrer sous un même nom d’hôte DNS (A) l’ensemble des adresses IP des serveurs TS. Si un client se connecte sur un serveur offline la connexion fera un timeout puis le client ira se connecter sur une autre adresse. Le timeout prend un certain temps que le client devra subir. Il est cependant obligatoire avec cette méthode.

Lors de la connexion à un serveur, celui-ci va vérifier l’existence d’une session existante sur un autre serveur mais aussi si aucune session n’a été ouverte et si c’est nécessaire, demander au client de se connecter sur un serveur moins chargé. On peut en effet attribuer des poids aux différents serveurs. Cependant on n’atteint pas la granularité de Citrix où le partage de charge se fait en fonction de la charge CPU/RAM/IO des sessions. Ici juste le nombre de sessions et le poids du serveur est pris en compte.

Un mécanisme est présent sur les serveurs TS pour interdire les nouvelles sessions TS tout en gardant les sessions actuelles actives. Ainsi si on veut faire une maintenance sur un serveur il suffit d’activer ce mode et attendre quelques heures la déconnexion des clients pour avoir un serveur libre. En jouant sur les poids, ce mode d’évacuation et un monitoring des ressources il est possible de concevoir une application pour gérer dynamiquement et équitablement les ressources de la ferme.

Licences Terminal Services

Le service de licences Terminal Services permet de délivrer des CAL TSE aux clients. Celles-ci sont de deux types : Per-Device ou Per-User (par périphérique ou par utilisateur). Avec Windows Server 2003 on n’avait aucun moyen de connaitre la délivrance des licences Per-User. Désormais, Windows Server 2008 permet de gérer ces licences, si le serveur gère le domaine. On dispose également de rapport sur l’utilisation des licences et de fonction de révocation des licences émises.

Le serveur de licences Windows Server 2008 permet de donner des licences aux serveurs TS Windows Server 2003 si vous êtes dans un environnement mixte. Par contre, un serveur de licences Windows Server 2003 ne peut pas délivrer de licences pour un serveur TS 2008.

Windows System Ressource Manager

Conçu à la base pour les versions Windows Data Center, et finalement intégré à Windows Server 2008, le composant Windows System Ressource Manager permet d’imposer un usage équilibré des ressources systèmes (CPU et mémoire principalement).

On peut régler le partage des ressources par session utilisateur ou par utilisateur. Ainsi un utilisateur ne sera pas désavantagé si un utilisateur gourmand en ressources se connecte sur le même serveur. Il est cependant dommage que le contrôle n’aille pas plus loin (gestion des I/O), fixer à l’avance une limite, etc.

PowerShell pour Windows 2008

Windows PowerShell, le nouveau langage de scripts intégré à Windows Server 2008 va également être très utile pour l’utilisation des services terminaux. Etant donné que les services terminaux stockent une quantité d’information accessible via WMI, les administrateurs TS vont pouvoir automatiser des changements de configuration au moyen de scripts PowerShell. Un autre usage très intéressant d’utiliser PowerShell pour examiner les similitudes ou les différences de configuration de plusieurs serveurs d’une ferme TS.

Remake : Est-ce la mort de Citrix ?

Mais non. Deux raisons principales à cela. La première est que si l’on exclut les usages de services terminaux pour de la prise de contrôle à distance, 70% des entreprises utilisant les Terminal Services de Windows Server 2003 utilisent également les solutions Citrix.

La dernière version du système d’exploitation de Microsoft permet simplement de remonter le niveau des fonctionnalités de base des solutions de type SBC pour Windows. Le tableau ci-après vous permettra de comprendre les apports de Citrix vis-à-vis des améliorations apportées par Windows Server 2008 (en gras dans le tableau).

Fonctionnalités comparées

2ème partie : Comparaison des solutions du marché « Server Based Computing »

Les SBC sur Windows Server ont désormais un peu plus que 10 ans (12 Mai 1997). Qui se souvient de « Hydra » et du protocole T.Share/T.120, de Citrix « Picasso », devenu WinFrame, ou de l’implication de Prologue Software avec WinTime ?

Lien :
http://msdn.microsoft.com/archive/default.asp?url=/archive/en-us/dnarwts/html/msdn_hydrawp.asp

L’un des avantages de l’arrivée de Windows Server 2008 sur le marché est qu’il sera sans doute pour vous le moment de vous réinterroger sur le marché des solutions de type client léger. Comme nous l’avons dit, si Citrix reste le leader incontesté et souvent synonyme de ce domaine avec Presentation Server, il conviendra de vérifier si d’autres compétiteurs pourraient vous apporter une solution alternative, ne serait-ce que lors de la renégociation de vos contrats. Parmi ces sociétés se trouve bien entendu Microsoft, mais également d’autres fournisseurs que je vous propose de découvrir ou d’apprécier :

Comparaison des offres

1 Star2 Stars3 Stars4 Stars5 Stars (8 votes)
Loading ... Loading ...
  1. #1 by jerem87 - May 24th, 2010 at 16:41

    Très bon article mais il n’y a pas de tableau :-( ?

(will not be published)
  1. No trackbacks yet.

Le Groupe Devoteam | Devoteam International | Devoteam Jobs | Devoteam Consulting
| Devoteam Opérations | Devoteam Solutions | Devoteam Blog | Devoteam Finance

Devoteam Blog, specialist talk point : Welcome !

Authorize

Lost Password

Register

Please contact the administrator.