IIS, présentation de la solution

IIS, présentation de la solution

Introduction

Dans cet article, nous allons voir comment installer et mettre en place un service IIS sur un Windows Server 2016 et ultérieur.

Nous allons également mettre en place deux sites afin de voir la mutualisation d’un serveur IIS.

IIS c’est quoi ?

IIS ou également appelé 2IS ou Internet Information Services, est le produit Microsoft qui permet d’exposer des applications, des pages WEB via les protocoles HTTP/HTTPS
Il permet également de mettre en œuvre un service FTP, mais nous n’aborderons pas ce sujet.

Il prend en charge les technologies du Web ASP, ASP.net, PHP.

La première version de 2IS date du 30 mai 1995 avec la version 1.0 pour arriver aujourd’hui à la version 10 qui apporte comme amélioration notable la prise en charge du http/2.

La liste des versions de IIS est consultable à cette adresse :

https://learn.microsoft.com/fr-fr/lifecycle/products/internet-information-services-iis

La concurrence ?

Parmi les logiciels de serveur Web concurrent à 2IS on retrouve pour les plus connus.

  • Apache
  • NGINX
  • Caddy 2

Un peu de Théorie

2IS à son propre vocabulaire, je vous propose de faire un tour de piste du vocabulaire qui sera utilisé pour ce tuto.

  • Binding : Principe qui permet à plusieurs sites de répondre à un même port via son FQDN.
  • Pool d’application :  Est attaché à une ou plusieurs applications. Chaque Pool créé un processus qui est piloté par un compte de service. C’est à ce niveau que l’on choisit le Runtime de l’application, le compte de service ainsi que plusieurs options liées à aux performances.
  • Site : Un site IIS est un conteneur pouvant abriter plusieurs applications.
  • Application : Permet une approche modulaire de son site, en séparant plusieurs fonctionnalités d’un même site en plusieurs applications avec la possibilité de lui donner des attributs différents et un pool d’application dédié.
  • Dossier Virtuel : C’est là que l’on définit le chemin vers son application, à la création d’un site un dossier virtuel dit racine est définit.
  • Web.config : Fichier de configuration unique à chaque application qui enregistre les paramètres customs.

On passe à la pratique !

Prérequis

  • Avoir un serveur DNS
  • Une machine sous Windows Server 2016 ou ultérieur pour héberger 2IS
  • Un client pour réaliser le test de connexion au site
  • Le tout dans le même réseau 😊

Installation Basique de IIS

Nous allons voir comment installer 2IS sur un Windows Server 2022 (Ce tuto est valable pour les Windows server 2016 et Ultérieur)

  • Sur votre Windows Server, aller sur Gérer et Ajouter des rôles et fonctionnalités
  • Cliquer sur Suivant
  • Cliquer sur Suivant
  • Cliquer sur Suivant
  • Ici nous allons cocher l’option serveur Web (IIS), laisser par défaut les options de la fenêtre qui apparait, clic sur Ajout Des Fonctionnalités puis faire Suivant
  • Cliquer sur Suivant
  • Selectionner .Net Framework 4.8 et cliquer sur Suivant

Cette partie de la configuration est intéressante, elle permet de sélectionner les différents services que nous voulons avoir avec notre Serveur IIS.

La bonne pratique est de ne sélectionner que ce dont nous avons besoin mais dans ce cas précis, nous opterons pour les options par défaut.

  • Cliquer sur Suivant
  • Cocher la case « redémarrer automatiquement le serveur » puis faire « installer »
  • Le processus d’installation se mettra en place.

Dés que l’installation est terminée, nous allons pouvoir entrer dans la console d’administration de 2IS.

  • Aller dans « Gestionnaire de serveur è IIS è Gestionnaire des services internet »
  • Un premier site par défaut existe déjà. Il est joignable en tapant l’adresse IP du serveur dans son navigateur
  • Taper dans votre navigateur l’adresse IP de votre machine, vous devriez arriver sur cette page
  • Ce premier site est stocké au chemin suivant
  • Un Pool d’application dédié a été créé également

Création de nos deux premiers site IIS

Nous allons maintenant un site distinct du site par défaut.

  • Portail : RH

Nous allons aborder la question de mutualisation du serveur IIS. Un serveur IIS peut accueillir plusieurs applications répondant sur le port 80 ou 443 via le FQDN du site.

Nous allons également créer un Pool d’application différent et voir ces effets au niveau des processus.

  • Aller sur le « Gestionnaire des services internet » è Clic droit sur Ajouter un Site et valider

Remplir les cases comme sur l’impression d’écran

  • Modifier le nextwave.local par votre propre nom de domaine
  • Créer le dossier qui hébergera le site sur un disque différent de celui de l’installation de 2IS est une bonne pratique, il est possible de créer ce dossier sur un partage SMB également.  
  • Nous avons un site et un pool d’application qui a été créé
  • Dans notre Dossier Application, créons notre premier fichier HTML.
  • Maintenant, il faut créer une entrer A sur le DNS de votre domaine qui pointera le FQDN « portail-rh.VOTRENOMDEDOMAINE »

Au niveau des processus Windows, on voit que deux processus ont été créé pour chacune de mes applications.

Attention, pour ce tuto, je me suis connecté au site avec un client hors domaine et un compte Local.
Avec les configurations actuelles nous avons une faille de sécurité. N’importe qui étant sur le réseau peut accéder à mon application RH. L’authentification est mise par défaut sur « Anonymous »

Nous verrons dans un prochain article comment sécuriser tout ça.

Pour conclure

La mise en œuvre d’un serveur IIS reste assez simple. Mais 2IS à de nombreuse fonctionnalité à explorer.
Nous avons déjà vu la mutualisation du serveur en y mettant plusieurs sites.

Comment faire répondre un site avec son propre FQDN. Le pool d’application et son importance afin d’avoir un processus dédié à chaque application.