TP 2 Client Ldap et CAS
Transcription
TP 2 Client Ldap et CAS
Protocoles applicatifs sur Internet Master TIW TP 2 Client Ldap et CAS Fabien Rico 18 novembre 2015 Objectifs — Découverte de ldap et CAS — Découverte des outils d’authentification web Ce TP remplace le TP2 distribué la semaine dernière. Il se déroule sur 1 séance I Ldap Nous avons mis en place un serveur Active Directory, ldap et dns qui servira durant le TP. Ce serveur se trouve à l’adresse 192.168.73.238. Pour la version chiffrée, l’autorité de certificat utilisée dans cette série de TP se trouve à l’adresse : http://192.168.73.201/cacert.pem. I.1 Client ldap Installer le client ldap et utilisez-le pour interroger le serveur. Utiliser le client en mode texte ldapsearch. Utiliser en parallèle un outil de capture de paquets pour regarder les échanges de données. Q.I.1) - Quel commande faut-il taper pour obtenir les informations sur l’arbre stocké par le serveur ? Q.I.2) - Pour voir la liste des utilisateurs il faut s’authentifier auprès du serveur en utilisant un compte ayant les droits de lecture (dont le dn est : cn=lecteur,cn=Users,dc=pai,dc=univ−lyon1,dc=fr et le mot de passe passedulecteur). Qu’elle est la commande ? Q.I.3) - Observer l’échange généré entre le client et le serveur. Quelles sont les requêtes ldap utilisées ? Qui coupe la communication ? Q.I.4) - Repérer le paquet bindRequest à quoi sert cet échange de données, que voit-on ? Q.I.5) - Faites une requête en utilisant TLS. 5(a) - Quelle commande faut-il taper pour utiliser TLS ? 5(b) - Pourquoi cela ne fonctionne-t-il pas ? Que devez-vous faire pour résoudre le problème ? 5(c) - Lorsque cela marche, refaire une capture de la même requête. Quelle nouvelle commande ldap est utilisée ? Que se passe-il ensuite ? II Drupal Nous allons voir comment utiliser une application largement répandue avec une authentification ldap. Nous avons choisi Drupal, un des principaux CMS (Content Management System) du marché. Q.II.1) - Installez Drupal version 7 sur votre serveur web Faculté des sciences - Dépt. informatique 1 Univ. Claude Bernard Lyon I Protocoles applicatifs sur Internet Master TIW — Le docker apache devra avoir de nouveau paquets : php5−gd, php5−ldap, php5−curl, php−pear, php−auth. Adaptez le Dockerfile et reconstruisez le docker. — Télécharger l’archive disponible sur le site de Drupal : https://drupal.org/project/drupal — Extraire l’archive dans votre volume partagé avec le docker apache — Pointer votre navigateur sur la page index de votre site Drupal, pour cela il faudrat sans doute odifier la config de nginx pour ne pas qu’il modifie la variable Host transmise à drupal (voir proxy set header dans https://www.nginx.com/resources/admin-guide/reverse-proxy/). — La séquence d’installation doit se lancer, prenez soin de choisir une base de donnée SQLite pour éviter les dépendances à un serveur MySQL. Q.II.2) - Configurez drupal pour utiliser un proxy dans [drupal home]/sites/default/settings .php. Q.II.3) - Configurez drupal pour utiliser le serveur ldap du TP pour l’authentification et la créations des utilisateurs. Avec votre rapport vous fournirez les fichiers Dockerfile, nginx.conf, [drupal home]/sites/default/settings .php. III CAS et Drupal Vous utiliserez pour cette partie le serveur CAS disponible à l’adresse : https://cas.univ-lyon1.fr/cas Ce serveur CAS utilise vos comptes étudiants rééls et non plus les comptes créés spécifiquement pour le TP. Il est configuré pour permettre la diffusion des attributs suivants vers les applicatifs hébergés sur les adresses IP de vos serveurs web : — name — firstname — email Q.III.1) - La communauté Drupal maintient 2 modules permettant l’authentification CAS ainsi que la récupération d’attribut depuis un serveur CAS 1(a) - Installer une seconde instance de drupal. 1(b) - Trouvez les 2 modules nécessaires à l’authentification CAS et à la récupération d’attributs. Il est possible qu’il y ait une dépendance à un 3eme module. 1(c) - Configurez Drupal pour utiliser ces modules et de sorte à satisfaire le fonctionnement suivant : — Faites vérifier auprès de votre responsable en l’invitant à créer son compte sur votre instance Drupal. — Ses données de profil dont le nom, prénom, adresse mail et nom d’utilisateur devront être valués directement à l’issu de l’authentification. 1(d) - Faites vérifier auprès de votre responsable en l’invitant à créer son compte sur votre instance Drupal. Aide Installation d’un module Drupal : — Extraire l’archive d’un module dans le répertoire ”sites/all/modules” de votre instance Drupal — Dans le backoffice Drupal, activer le module préalablement installé Faculté des sciences - Dépt. informatique 2 Univ. Claude Bernard Lyon I