Symptômes
Après avoir installer MOSS 2007 et créer des applications Web et des sites vous n’arrivez pas à explorer vos sites avec leurs noms d’hôtes sur le serveur MOSS lui même, par contre ils sont bien accessibles depuis n’importe quel autre serveur ou poste client.
Lorsque vous tapez l’adresse de votre site on vous demande de s’authentifier 3 fois de suite et vous recevez une page vierge au niveau de l’explorateur.
Pas de messages d’erreur enregistrés à l’exception du journal de sécurité qui présente une série d’événements 4625: An Account Failed to Logon
Ce comportement se manifeste sur le serveur Web lui même et ne concerne que les sites ayant des noms d’hôte.
Cause
Depuis le service pack 1 de Windows Server 2003 une fonctionnalité de sécurité a été intégré au système d’exploitation (LoopBack Check) afin d’empêcher les attaques par réflexion sur les serveurs Web.
Cette fonctionnalité provoque un échec d’authentification pour toute demande portant un nom d’hôte qui ne ne correspond pas au nom de la machine.
Résolution
Pour remédier à ce problème on dispose de deux méthodes:
Méthode 1 : Désactiver la fonctionnalité LoopBack Check
- Ajouter une valeur DWORD nommée DisableLoopBackCheck ayant une valeur 1 à la clé de registre HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa
- Redémarrer le service d’administration d’IIS
Méthode 2 : Spécifier les noms d’hôtes en question
- Ajouter une valeur Multi-String nommée BackConnectionHostNames à la clé de registre HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\MSV1_0 et y tapez les noms d’hôtes de tous les sites dont l’authentification est Windows et qui présentent le problème.
- Redémarrer le service d’administration d’IIS
Réflexion
Avant de passer à l’action il faut se poser la question si on considère ce comportement problématique ou non puisque les sites sont bien accessibles de n’importe quel serveur ou poste client et seulement inaccessibles depuis le serveur Web lui même.
Il faut bien avoir cette réflexion puisque la résolution de ce “faux” problème consiste à désactiver la fonctionnalité LoopBack Check ce qui constitue en lui même l’exposition du serveur à un risque de sécurité.
Parmi les deux méthodes de résolution la deuxième semble comme même plus adaptée étant données qu’elle nous permet de spécifier les sites pour les quels la fonctionnalité sera désactivée et qui peuvent être les sites les plus sécurisés de point de vue fonctionnalités et utilisation, ce qui nous permettra de minimiser l’exposition du serveur à ce genre de risques de sécurité.