SUPINFO International University

SUPINFO Institute of Information Technology
Laboratoire Microsoft




Tous les Articles du Laboratoire Microsoft

IT Forum 2005 - Vue d’ensemble de IIS 7.0 sous Windows Vista / Longhorn
Accueil > Articles > Evènements
Auteurs 
Matthieu MARTINEAU
PI SERVICES (GOLD PARTNER MICROSOFT)
Ingénieur systèmes et réseaux


 Tous les articles de cet auteur

4,2/5

Bien


66501
228/978

2. Présentation de la version 7.0 de IIS

2.1 Historique

La première version de IIS a vu le jour en 1996 avec Windows NT 4.0 Server. Plusieurs évolutions rapidement vu le jour sous la forme de service pack pour Windows NT (le serveur Web en était à sa version 4 en 1997). Plusieurs années plus tard (en l'an 2000), Microsoft intégra une version revue au sein de son nouveau système : Windows 2000 Server. Cette édition de IIS était installée par défaut en même temps que l'OS . Cela participa à sa diffusion sur le marché mondial mais posa de nombreux problèmes de sécurité (notamment mis en évidence par le ver NIMDA).


Brett Hill et Olga Londer entament la conférence par un bref historique sur IIS

Avec Windows Server 2003 et Internet Information Services 6, l'accent a été mis sur la sécurité et la stabilité (création des pools d'application pour isoler les sites Web les uns des autres et mieux gérer les ressources système, le composant n'est plus installé par défaut...). Le service pack 1 de Windows Server 2003 confirme cette tendance étant donné que de nombreux paramètres ont été modifiés pour réduire encore la surface d'attaque et augmenter au maximum la sécurité de l'application (désactivation de l'accès anonyme par défaut, restriction des droits du compte SERVICE RESEAU....).

 

2.2 Les possibilités de IIS sous Windows Server 2003

La version actuelle de IIS propose de nombreuses fonctionnalités comme la mise en place d'un serveur Web (protocoles HTTP / HTTPs), d'un serveur FTP, d'un serveur de newsgroups via le protocole NNTP mais aussi d'un serveur de messagerie (SMTP / POP3). Un serveur exécutant IIS peut aussi faire office de passerelle SMTP et éventuellement filtrer les emails pour bloquer les courriers non sollicités encore appelés SPAM (pour cela le composant filtreur de message inclut dans ISA Server 2004 doit être installé sur le serveur IIS) !

Grâce au support de nombreux langages Web "dynamiques" comme le PHP, l'ASP ou bien encore l'ASP .Net, IIS peut facilement héberger de nombreuses applications Web totalement indépendantes les unes des autres ! Les services IIS 6.0 sont d'ailleurs parfaitement adaptés à l'implémentation d'un serveur multi-sites notamment grâces aux pools d'applications qui permettent de gérer les ressources systèmes (utilisation du processeur, de la mémoire vive...) et fournissent une grande stabilité au serveur (lorsque l'un des sites Web hébergé "plante", cela n'affecte aucunement les autres sites à partir du moment où des pools d'applications différents sont utilisés !).

Autre avantage primordial : la sécurité à été fortement améliorée de puis IIS 5.0 notamment grâce à l'utilisation par défaut d'une configuration plus stricte. Ainsi lorsque IIS 6.0 est installé aucun composant (ASP, ASP .Net, Webdav...) n'est activé par défaut ce qui permet d'une parte de réduire la surface d'attaque et d'autre part d'éviter de surcharger le serveur avec des services inutiles. L'accès anonyme est d'ailleurs désactivé par défaut; c'est pourquoi il faut explicitement activer l'accès anonyme lorsque l'on souhaite qu'un site Web soit accessible du public !

Enfin la gestion des services IIS est facilitée via la console MMC (qui autorise la configuration à distance) mais aussi grâce à l'intégration d'une multitude d'assistants qui facilitent la vie de l'administrateur. On peut notamment citer l'assistant permettant la gestion des certificats (cet assistant permet de créer et d'envoyer une demande de certificat, de sauvegarder la clé publique associée à un certificat, d'installer un certificat existant en parcourant la liste directement sur l'autorité de certification...).

 

2.3 Les problèmes rencontrés avec Internet Information Services 6.0

L'un des principaux problème de IIS 6.0 est lié à sont architecture monolithique (tout est basée sur une seule et même DLL). Pour rajouter des fonctionnalités au serveur, il faut donc rééditer ce fichier de qui s'avère fastidieux. De plus il est impossible de supprimer certaines fonctionnalités lorsqu'elles sont inutiles en désactivant la DLL étant donnée que cela affecterait toutes les autres fonctions !

Cette architecture empêche aussi les utilisateurs finaux de modifier et de personnaliser les services IIS (seules les équipes de développements de Microsoft et certains partenaires privilégiés sont à même de modifier le code de IIS 6.0). La seule méthode permettant l'ajout de fonctionnalités est donc le système de filtres ISAPI qui n'est pas exempt de défaut comme nous le verrons un peu plus tard.

Le principal inconvénient de la version actuelle d'Internet Information Services est donc son manque d'évolutivité et le faible champ d'action de l'utilisateur sur le serveur !

 

2.4 Les nouvelles fonctionnalités de IIS 7.0

L'une des principales nouveautés de IIS 7.0 concerne le cœur de l'application en elle-même étant donné que la structure monolithique des précédentes versions est abandonnée au profit d'un système de modules indépendants. Plus de quarante composants seront ainsi disponibles lors du lancement de la version finale du produit. Ce système décentralisé offrira de nombreux avantages :

  • mise en place de serveurs plus performants en chargeant uniquement les composants nécessaire en mémoire

  • configuration de serveurs sécurisé en désactivant tous les composants inutiles (le but est toujours de réduire la surface d'attaque)

  • implémentation de serveurs personnalisés en ajoutant des modules supplémentaires (par exemple un module d'authentification pour un protocole propriétaire)

Les particuliers et les entreprise auront donc la possibilité de développer des composants supplémentaires (un SDK supportant les langages C++, C# et VB .net sera disponible gratuitement) directement intégrable au cœur de l'application. Ceci permettra de ne pas utiliser les filtres ISAPI pour ajouter des fonctionnalités supplémentaire au serveur. Bien entendu la compatibilité avec IIS 6.0 sera assurée (y compris pour les filtre ISAPI comme le filtre PHP ou bien encore le filtre ASP .net).

La sécurité du produit a été particulièrement soignée; le développement a été intégralement réalisé avec le framework .net 2.0 et les versions beta sont régulièrement soumises à des tests visant à repérer et à corriger d'éventuelles failles. Une grande liberté au niveau de la délégation de l'administration sera aussi de mise. Ainsi il sera possible de déléguer des privilèges limités sur le serveur à des utilisateurs non administrateurs grâce à  la création de rôles très précis. C'est donc un énorme avantage par rapport à IIS 6.0 qui ne distingue que deux types d'utilisateurs : ceux ayant un contrôle total sur la configuration et ceux n'ayant aucun contrôle !

L'interface du produit a elle aussi été entièrement revue notamment au niveau de l'ergonomie. Le serveur pourra ainsi être administré à l'aide d'une console basée sur la version 3.0 de MMC ou bien directement via des fichiers de configuration, tous au format XML ! Un héritage des paramètres de configuration est toujours de mise. Ainsi un paramètre configuré au niveau du serveur sera hérité par les sites Web et un paramètre configuré au niveau d'un site Web sera hérité par les répertoires virtuels. Bien entendu il est toujours possible de "bloquer" cet héritage en configurant des paramètres différents au niveau du site ou du répertoire virtuel ! Pour simplifier la gestion de multiples serveurs, un système permettra d'exporter la configuration d'une machine, puis de la réimporter dans un autre serveur.

Enfin de nombreux outils de support et de dépannage seront directement intégrés dans la console MMC permettant de gérer les services IIS. ces outils permettront de diagnostiquer de manière très précises les problèmes survenant sur le serveur et permettront d'une part de détecter les problèmes de configuration et d'autre part d'optimiser et d'améliorer le code des applications Web. Nous aurons l'occasion d'aborder un peu plus en détail ces fonctionnalités de dépannages réellement impressionnantes dans la section 3.5 de cet même article.

 


1. Introduction

2. Présentation de la version 7.0 de IIS
     2.1 Historique
     2.2 Les possibilités de IIS sous Windows Server 2003
     2.3 Les problèmes rencontrés avec Internet Information Services 6.0
     2.4 Les nouvelles fonctionnalités de IIS 7.0

3. Mise en œuvre de IIS 7.0
     3.1 Les outils d'administration intégrés
     3.2 Gestion des composants des services IIS
     3.3 Implémentation de la sécurité et délégation
     3.4 Compatibilité avec l'existant
     3.5 Les outils de diagnostic et de dépannage

4. Conclusion




En Savoir Plus 
Evaluez cet article 


Pour afficher ou poster un commentaire, cliquez sur ce lien : Forum-Microsoft



Retrouvez ci-dessous les autres sections du Laboratoire Microsoft

Définitions

Accès direct aux définitions :
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

Effectuez une recherche dans les définitions :