Editions ENI
Services RDS de Windows Server 2008 R2
Clients légers : architecture et implémentation
(2ième édition) CollectionExpert IT
Extrait
© E
diti
ons
ENI -
All
righ
ts r
eser
ved
296de Windows Server 2008 R2
Services RDS
Le service Termsrv (Termsrv.dll tourne à l'intérieur d'un processus sv-chost.exe) héberge un écouteur qui communique avec un pilote TDI (modenoyau) afin d'écouter les requêtes de connexions. Il interagit également avecle serveur de licences, la pile de protocole RDP ou encore avec le Gestionnairede Sessions Locales.
En outre, désormais seul le gestionnaire de sessions locales fonctionne avec uncompte de service système, le service Termsrv tourne lui avec un compte deservice réseau ce qui permet d'améliorer la sécurité.
Enfin, voici deux tableaux récapitulant les services et les fichiers importantsutilisés sous Windows 2008 R2 :
Services :
Nom du Service Localisation
Services Bureau à distance(TermServices)
%systemroot%\system32\svchost.exe -ktermsvcs %systemroot%\system32\termsrv.dll
Configuration des services Bureau à distance(SessionEnv)
%systemroot%\system32\svchost.exe -k netsvcs %systemroot%\system32\sessenv.dll
Passerelle des services Bureau à distance(TSGateway)
%systemroot%\system32\svchost.exe -k tsgateway %systemroot%\system32\aae-dge.dll
Service Broker pour les connexions Bureau à distance (Tssdis)
%systemroot%\system32\tssdis.exe
Redirecteur de port du mode utilisateur des ser-vices Bureau à distance (UMRdpService)
%systemroot%\system32\svchost.exe -k LocalSystemNetworkRestricted %systemroot%\system32\umrdp.dll
297Concepts avancésChapitre 4
Fichiers :
Composant Description
AACLIENT.DLL TS Web Access
CREDSSP.DLL Support du SSO
MSTSCAX.DLL ActiveX de contrôle TS
MSTSC.EXE Exécutable du bureau à distance
RDPCFGEX.DLL Extension de configuration des connexions
RDPD3D.DLL Extension de rendu Direct 3D (Dx10)
RDPDD.DLL Pilote vidéo
RDPINIT.EXE Utilisé pour l'initialisation de RemoteApp (lancé par USERINIT.EXE)
RDPSHELL.EXE Shell pour RemoteApp (remplace explorer.exe)
RDPSIGN.EXE Permet de signer les fichiers .rdp
RDPWSX.DLL Utilisé pour les opérations de connexion/décon-nexion
RDPDD.DLL Pilote écran TS
RDPCLIP.EXE Redirection du presse-papier
TERMSRV.DLL Gestion de la pile de connexion
TSDDD.DLL Pilote écran pour une connexion console
WINLOGON.EXE Fournit les opérations de connexion/déconnexion [Ctrl+Alt+Suppr]
WINSTA.DLL Fournit les informations de session (durée d'inacti-vité par exemple)
WINMM.DLL Support des services multimédia
WTSAPI32.DLL Api de développement
© E
diti
ons
ENI -
All
righ
ts r
eser
ved
298de Windows Server 2008 R2
Services RDS
1.2 Isolation de la session 0
Une des nouvelles fonctionnalités permettant d'accroître la sécurité du sys-tème est l'isolation de la session 0. Sous Windows 2003, les applications et lesservices tournaient tous dans la session 0 (appelée session console) ce quin'était pas sans risque dans la mesure où de nombreux services fonctionnentavec des privilèges systèmes.
Dès Windows 2008, seuls les services tournent dans la session 0 (plus deconnexion interactive), les applications, elles, fonctionnent dans d'autres ses-sions (un programme malveillant ne pourra plus utiliser une application malcodée pour attaquer un service afin d'élever son niveau de droits).
1.2.1 Les différents états des sessions
Dès lors qu'un utilisateur se connecte à un serveur (localement ou à distance),il ouvre ce que l'on appelle une session interactive. Cette session contientaussi bien des processus systèmes, que des applications ou encore le bureau del'utilisateur.
Sous Windows 2008 R2, le premier ID des sessions interactives est le 1 (l'ID 0est réservé aux services), que l'utilisateur soit connecté localement (à laconsole du serveur) ou à distance.
Durant sa vie, une session passe par plusieurs états dont les plus intéressantssont actif et déconnecté :
– Etat actif : l'utilisateur travaille actuellement dans sa session.
– Etat déconnecté : l'utilisateur n'est pas connecté à la session mais les appli-cations continuent de s'y exécuter.
299Concepts avancésChapitre 4
1.2.2 Terminal local ou distant
Quand une session est active, celle-ci est attachée à un certain nombre de pé-riphériques d'entrée/sortie (clavier, écran…) qui forment ce que l'on appelleun terminal. Le terminal peut être soit local (s'il s'agit des éléments physique-ment connectés sur le serveur), soit distant (s'il s'agit d'une liaison avec les en-trées/sorties du client). Dans le cas d'un terminal distant, celui-ci estégalement associé à un objet de connexion qui contient notamment des infor-mations sur la pile de protocole ou encore les pilotes d'extension.
Quand une session est déconnectée, elle n'est plus attachée à aucun terminal.S'il s'agit d'une connexion distante, le terminal et l'objet connexion sont alorsdétruits. En revanche, un terminal local n'est jamais détruit de manière per-manente. Quand la session attachée à un terminal local passe à l'état décon-necté, une nouvelle session console est générée et un nouveau terminal localy est rattaché (bien que la session ne soit pas active, elle est quand même at-tachée au terminal local). Ce type de session est dans un état appelé connecté(affichage de l'écran [Ctrl][Alt][Suppr]).
1.2.3 Reconnexion de session
Une session déconnectée doit être rattachée à un nouveau terminal (local oudistant) avant de pouvoir être réutilisée. Voici les différentes étapes qui se dé-roulent dans ce cas :
– Si l'utilisateur se connecte localement sur le serveur, une session (ID 1) estattachée au terminal local et passe dans l'état actif. La session créée porte lenom de session console.
– Quand l'utilisateur se déconnecte (ou verrouille sa machine), la session passedans l'état déconnecté. À cet instant, la session 1 n'est plus attachée à aucunterminal. Quand le terminal a fini de se fermer, une nouvelle session (ID 2)est créée et rattachée au terminal local (session dans l'état connecté). La ses-sion d'ID 1 reste, elle, dans l'état déconnecté et le nom console est assignéà la session d'ID 2.
– Si le même utilisateur se connecte à distance sur le serveur, un nouveau ter-minal distant est créé et rattaché à sa session déconnectée (ID 1). La sessiond'ID 1 passe dans l'état actif avec ce terminal distant.
© E
diti
ons
ENI -
All
righ
ts r
eser
ved
300de Windows Server 2008 R2
Services RDS
– Lorsque l'utilisateur se déconnecte, le terminal distant est détruit et la ses-sion repasse dans l'état déconnecté.
– La session d'ID 1 ne sera fermée que lorsque l'utilisateur initiera une ferme-ture de session (ou que l'administrateur forcera la fermeture).
1.2.4 Option /console du client RDC
Sous Windows 2003, la session d'ID 0 est appelée session console et rattachéeau terminal local. Lorsqu'un utilisateur ouvre une session locale, il est de faitconnecté sur la session d'ID 0 (qui n'est fermée que lors d'un arrêt du système).Dans les faits, certaines opérations, telles que des installations d'applicationsou l'affichage de certaines boîtes de dialogues, ne peuvent se faire qu'à laconsole. Pour permettre aux administrateurs d'accéder à la session 0 à dis-tance, le commutateur /console a donc été ajouté au client RDC.
Comme dit précédemment, depuis Windows 2008, la session d'ID 0 n'est plusinteractive (réservée aux services). La session dite console, quant à elle, estsimplement celle qui est connectée au terminal local, ce qui signifie, end'autres termes, que n'importe quelle session (quel que soit son ID) peut êtreassociée au terminal local et donc être de type console.
Contrairement à ce qui existe sous Windows 2003, il n'y a plus de raison, avecWindows 2008 et 2008 R2, de chercher à se connecter à distance au terminallocal (session dite console) car l'ensemble des sessions distantes bénéficientdes mêmes fonctions que celle-ci. De fait, le commutateur /console, dispo-nible jusqu'à présent dans les clients RDC, ne sert sous Windows 2008 qu'à ad-ministrer le serveur sans consommer de licence TSE CAL. Depuis la version duclient RDC 6.1, le commutateur /admin a été introduit en remplacement ducommutateur /console, dévolu aux tâches d'administrations.
Enfin, il faut savoir que le commutateur /admin ne sert que si l'on se connecteà un serveur Windows 2008 Terminal Server ou Windows 2008 R2 RDS (pourne pas consommer de CAL). L'utilisation de ce commutateur sur un serveur enmode administration à distance n'a aucun effet.
301Concepts avancésChapitre 4
1.3 Support des polices ClearType
Avec la démocratisation des écrans LCD, l'arrivée de Windows 7 en rempla-çant direct de Vista et d'Office 2007, les polices ClearType revêtent un carac-tère primordial. En effet, de nombreuses polices sont désormais optimiséespour l'utilisation de ClearType et apparaîtraient bien fade si sa prise en chargen’est pas activée.
Pour autant, la finesse des polices a un coût. Normalement, sous RDS (sansactiver le lissage des polices), les polices sont transmises vers le client sousforme de caractères, ce qui est géré de manière efficace (mise en cache) par leprotocole RDP afin de limiter la consommation de bande passante. En re-vanche avec l'activation du ClearType, les polices sont transmises sous formed'images ce qui conduit à une augmentation significative de la consommationde bande passante. D'après les tests réalisés par Microsoft, l'activation du lis-sage des polices conduirait à une surconsommation de bande passante del'ordre de quatre à dix fois celle mesurée lors de la transmission des polices enmode caractère.
1.4 Prioritisation de l'affichage
Le client RDC 6 et 6.1 résout le problème de la prioritisation d'affichage enajoutant la possibilité de contrôler les canaux virtuels. Cela permet de posi-tionner une importance plus faible pour les flux annexes tels que l'impressionou le transfert de fichiers.
Le paramétrage, défini par défaut est de 70 % pour l'affichage et les entrées sor-ties (clavier/souris) et de 30 % pour le reste des flux. Ce paramétrage peut êtreajusté à l'aide des clefs de registre suivantes (Type DWORD) :
Sous HKLM\SYSTEM\CurrentControlSet\Services\TermDD :
FlowControlDisable : positionner cette entrée à 1 pour désactiver la priori-tisation de l'affichage. Les requêtes seront alors traitées par un classique mé-canisme de First In, First Out (Premier Entré, Premier Sorti).
Editions ENI
Windows Server 2008 R2 Administration avancée
(2ième édition)
CollectionExpert IT
Extrait
2.1 Le choix de l'architecture réseaux
Deux point précis sont à étudier à ce niveau :
- le choix de la zone DNS ;
- le choix de la classe réseau.
2.1.1 La zone DNS
Deux aspects sont importants lors du choix de la zone DNS.
Le nom choisi pour la zone DNS doit correspondre à l’intégralité de l’entité (entre-
prise, groupe, etc.) que l’on souhaite gérer. Ce nom doit pourvoir être accepté par
toutes les entités dépendantes qui vont se retrouver dans cette zone. Le problème
est beaucoup plus politique que technique !
Si une entité n’entre pas dans ce cadre, cela veut dire qu’une zone DNS spécifique
devra lui être affectée.
Si la zone DNS doit être utilisée sur Internet, le domaine DNS sera forcément
public et enregistré, c'est-à-dire utilisant une extension reconnue de type .fr, .com,
.info... !
En revanche, pour un réseau interne, le domaine peut être public ou privé. Le
choix le plus courant est alors d’utiliser un domaine DNS local avec une extension
inconnue sur Internet. L’extension .local est très souvent utilisée sous la forme
MaSociete.local. Le découpage entre ce qui est interne ou externe est plus facile à
réaliser. En revanche, l’utilisation d’un même nom suppose une double administra-
tion, plus complexe, donc des serveurs DNS différents pour ne rendre visible sur
Internet que ce qu’il est souhaitable de montrer.
2.1.2 La classe réseau
Pour tous les réseaux internes, le choix se portera évidemment toujours sur les
classes réseaux privées. Si l’on ne peut pas toujours modifier l’intégralité des
réseaux existants pour des raisons souvent historiques, on peut au moins créer
tous les nouveaux réseaux en suivant cette règle.
La classe du réseau se choisit en fonction du nombre de machines présentes sur le
réseau, du nombre de sites, etc. Un réseau de classe C (192.168.0.X) représente
souvent un bon choix initial. Il est toujours possible de changer de classe, de
réseau ou même surtout d’utiliser plusieurs réseaux en fonction des besoins.
L’usage de TCPIP v6 n’est pas encore bien développé mais deviendra nécessaire
dans les 2 ou 3 années qui suivent, principalement sur Internet. Sur le réseau local,
il reste encore de nombreux logiciels qui ne sont pas compatibles, mais ceci devrait
évoluer très rapidement !
Windows Server 2008 R2Administration avancée
202
©Edit
ions
EN
I-
Toute
repro
ducti
on
inte
rdit
e
2.2 L’installation d’un serveur DHCP
Si le service DHCP permet de mettre en place rapidement le réseau choisi, il per-
met aussi de modifier rapidement et globalement une série de paramètres. Il reste
encore quelques irréductibles qui n’utilisent pas ce service, mais c’est maintenant
rarissime.
Parmi les nombreux composants de Windows 2008 R2, le service DHCP est un rôle.
2.2.1 Définition
Le protocole DHCP (Dynamic Host Configuration Protocol) a pour but de fournir une
adresse IP et un masque à tout périphérique réseau (station, serveur ou autre) qui
en fait la demande. Selon la configuration, d’autres paramètres tous aussi impor-
tants seront transmis en même temps : les adresses IP de la route par défaut, des
serveurs DNS à utiliser, des serveurs WINS et le suffixe de domaine pour ne citer
que les principaux.
DHCP est souvent réservé aux stations, aux imprimantes et ne devrait servir
qu’exceptionnellement aux serveurs.
2.2.2 L’installation
Comme pour tous les composants Windows, l’installation peut se faire graphique-
ment ou en mode ligne de commande sans avoir besoin d’insérer le moindre
média.
servermanagercmd –install DHCP
�Remarque
Attention, le service devra être mis en démarrage automatique !
sc \\%COMPUTERNAME% config DHCPServer start= auto
Le service peut ensuite être démarré de manière classique :
NET START DHCPSERVER
Le démarrage du service permet de le rendre accessible et configurable.
Pour que le service DHCP commence à distribuer des adresses, il est indispensable
de configurer et d’activer une étendue.
Attention, si le serveur qui héberge DHCP fait partie d’une forêt Active Directory,
il doit en plus avoir été autorisé par des administrateurs membres du groupe
« Administrateurs de l’entreprise » ou ayant reçu les droits d’administration DHCP.
Le service DHCP, comme les autres services réseaux de références (DNS, WINS),
devrait toujours être installé sur des serveurs disposant d’adresses IP fixes.
Mise en place des services réseaux d'entreprise
Chapitre 5203
2.2.3 La configuration
La console d’administration DHCP est automatiquement installée en même temps
que le service, mais peut aussi être lancée à partir de toute autre machine la
possédant.
Y compris sur le serveur lui-même, sélectionnez le serveur DHCP (ou les serveurs)
que vous souhaitez gérer. La liste des serveurs déjà autorisés s’affiche automatique-
ment.
Pour autoriser un serveur DHCP, utilisez l’option Gérer les serveurs autorisés,
puis cliquez sur le bouton Autoriser, et saisissez le nom ou l’adresse IP.
Les serveurs autorisés apparaissent avec une flèche verte.
Chaque serveur DHCP peut servir de nombreuses étendues, mais une seule pour
chaque réseau IP.
Voici une étendue classique pour un réseau 192.168.2.X de classe C utilisant le
masque standard 255.255.255.0 !
Windows Server 2008 R2Administration avancée
204
©Edit
ions
EN
I-
Toute
repro
ducti
on
inte
rdit
e
La plage utilisée ne doit pas forcément utiliser la totalité de la classe réseau afin de
laisser de la place pour les serveurs ou les adresses IP réservées pour les
imprimantes.
La route par défaut fait partie des paramètres habituels liés à l’étendue.
Les options au niveau du serveur contiennent les paramètres qui sont valables
globalement sur toutes les étendues.
Les options de serveur (005,006,015,046) servent de valeurs par défaut, mais sont
remplacées par les options de l’étendue qui ont priorité.
Mise en place des services réseaux d'entreprise
Chapitre 5205
- La zone Nom de domaine DNS ne permet pas de spécifier plusieurs suffixes de
recherche DNS. Si nécessaire, les stratégies proposent d’ajouter des suffixes de
recherche.
- Le Type de nœud avec la valeur 0x8 configure le mode de résolution hybride.
C'est-à-dire qu’une interrogation des serveurs DNS/WINS sera effectuée en
premier, avec bascule en mode Broadcast en cas d’échec.
Certaines propriétés avancées du serveur DHCP peuvent être très intéressantes à
configurer.
Par exemple, lorsque la zone Tentatives de détection de conflit est configurée
avec une valeur supérieure à zéro, DHCP utilisera l’instruction ping pour détermi-
ner l’existence éventuelle d’une machine sur cette adresse.
Windows Server 2008 R2Administration avancée
206
©Edit
ions
EN
I-
Toute
repro
ducti
on
inte
rdit
e
La mise à jour dynamique des DNS est un élément particulièrement important à
gérer.
Le bouton Configurer permet d’activer la protection des noms lors de l’inscrip-
tion, les mises à jour et la suppression des enregistrements de type A et PTR.
Cette protection n’est effective que si le mode Mise à jour dynamique sécurisé est
actif.
Lorsque les zones de recherche inverses (Reverse ARP) sont créées et utilisées, il est
important de mettre à jour les enregistrements PTR et de ne pas les ignorer
lorsque le bail est supprimé.
La durée du bail sera d’autant plus longue que le nombre d’adresses IP disponibles
est important et que le risque de conflit est limité.
Mise en place des services réseaux d'entreprise
Chapitre 5207