LP ASRALL Outils Logiciels Libres LDAP, CMS et Haute Disponibilitée Auteurs : Rémi Jachniewicz, Julien Lacava, Gatien Gaspard, Romain Gegout, Benoit Henryon 17 mars 2009
Table des matières 1 Ldap 3 1.1 Installation du serveur openldap........................ 3 1.2 Inspection des schémas............................... 3 1.3 Configuration du serveur.............................. 3 1.4 Création du DIT.................................. 3 1.5 Démarrage du serveur............................... 5 1.6 Insertion des données dans l annuaire....................... 5 2 CMS : DRUPAL 6 2.1 Guide d installation :................................ 6 2.2 Guide d administration :.............................. 6 2.2.1 Configurer LDAP.............................. 6 2.2.2 Gestion des groupes LDAP......................... 6 2.2.3 Ajout de modules à Drupal........................ 7 2.2.4 Prise en main................................ 7 2.3 Évaluation des fonctionnalités :.......................... 7 2.3.1 Gestion du Versionning........................... 7 3 LVS 8 4 heartbeat 9 5 Mysql 10 2
1 Ldap 1.1 Installation du serveur openldap Voici les options telles que configurée lors de l installation : sudo apt-get install slapd ldap-utils mot de passe admin : admin sudo dpkg-reconfigure ommetre config -> non nom de domaine -> asrall.com nom organisation -> asrallssh mot de passe admin -> admin module de base de donnees -> hdb supprimer bdd autoriser ldapv2 1.2 Inspection des schémas Les classes filles de personnes sont : organizationalperson et residentialperson Mettre le tableau ici Les classes héritent des attributs parents obligatoires, c est pourquoi par exemple l attribut sn ou encore cn n est pas redéclaré dans les autres classes. 1.3 Configuration du serveur Création d un utilisateur : sudo slappasswd -h MD5 // Récupération du hash MD5 placer le résultat dans le fichier /etc/ldap/slapd.conf : rootdn cn=manager,dc=asrall,dc=com rootpw SSHAyCcwfMW2zG5iCiTEh8ZogGWtkf0qpPxr 1.4 Création du DIT 3
Fichier dit.ldif : #Base DN (existe déjà...) #dn: dc=asrall,dc=com # #objectclass: dcobject #objectclass: organization #dc: asrall #o: asrall # OU NANCY dn: ou=nancy,dc=asrall,dc=com ou: NANCY # OU TOULOUSE dn: ou=toulouse,dc=asrall,dc=com ou: TOULOUSE # OU Groups #dn: ou=groups,ou=nancy,dc=asrall,dc=com # #objectclass: groupofnames #member: #ou: Groups # OU Profs dn: ou=profs,ou=nancy,dc=asrall,dc=com ou: Profs # OU Etudiants NANCY dn: ou=etudiants,ou=nancy,dc=asrall,dc=com ou: Etudiants # OU Etudiants TOULOUSE dn: ou=etudiants,ou=toulouse,dc=asrall,dc=com ou: Etudiants 4
On crée un DIT avec : sudo slapadd -l./dit.ldif On vérifie : sudo slapcat 1.5 Démarrage du serveur Démarrer le serveur en forçant un niveau de debug de 5 et en gardant les options par défaut (ne lancez pas le serveur en tâche de fond en ajoutant un & à la fin de la ligne de commande pour pouvoir voir ce qu il retournera) Il existe 14 loglevel possibles (cumulables entre eux) (voir page 2 Tutoriel) Pour choisir le loglevel il y a 2 possibilités : -éditer loglevel dans slapd.conf -soit en ligne de commandes au lancement de ldap sudo /usr/sbin/slapd -d 5 // 5 pour loglevel 5 Vérifier que le process id du demon slapd est bien contenu dans le fichier pidfile en faisant un cat du fichier pidfile. Le fichier pidfile = /var/run/slapd/slapd.pid cat slapd.pid -> 5744 Le fichier pidfile = /var/run/slapd/slapd.args cat slapd.args -> /usr/sbin/slapd -d 5 start 1.6 Insertion des données dans l annuaire ldapadd -f asrall.ldif -x -W -D cn=manager,dc=asrall,dc=com ldapadd -f etudiant.ldif insertion de données via phpldapadmin : installation : sudo apt-get install phpldapadmin modification de /etc/php5/apache2/php.ini : memory limit = 50M acces a l interface : http ://adresse serveur/p test 5
2 CMS : DRUPAL 2.1 Guide d installation : Téléchargement de drupal sur http://drupalfr.org/ Version intallée : Drupal6.9 Prérequis : php5, mysql, apache2, phpmyadmin, php5-gd Décompresser l archive contenant Drupal dans un répertoire accessible par Apache (/var/www/drupal par exemple). Rendre www-data propriétaire de l ensemble du CMS (chown www-data :www-data -R /var/www/drupal). Renommer le fichier /var/www/drupal/sites/defaults.settings.php en settings.php Rajouter les droits d écriture à ce fichier (chmod u+w settings.php). Rajouter les droits d écriture au répertoire /var/www/drupal/sites/defaults/files (chmod u+w -R files) Créer une base de données pour Drupal Ouvrir un navigateur à l adresse http ://ipduserveur/drupal/install.php Préciser le nom de la base de données. Dans le navigateur : Remplir les informations pour la création d un utilisateur : Login : drupal MDP : drupal54 Sauvegarder Enlever les droits d écriture sur settings.php (chmod u-w settings.php) 2.2 Guide d administration : Suppression de l authentification par mail lors de la création d un compte : aller dans Administer - UserManagement - UserSettings et décocher la case Require e-mail verification Par defaut, il y a deux types de users, anonyme et identifié. Afin de donner des droits spécifiques, il faut créer des rôles que l on pourra affecter aux utilisateurs voulus. Pour ce faire, il faut définir les permissions désirées : Administer - User- Management - Roles 2.2.1 Configurer LDAP Pour gérer les utilisateurs depuis un serveur LDAP, il faut installer le module php5-ldap. Pour l intégration de LDAP dans Drupal, il faut y installer le module ldap integration. configuration de Ldap authentication : Mixed mode. The LDAP authentication is performed only if Drupal authentication fails Disallow login and log the conflict Add server : Base DNs : dc=asrall,dc=com UserName attribute : cn Email attribute : mail 2.2.2 Gestion des groupes LDAP Gestion des groupes LDAP pour Drupal : Groups exist as LDAP entries where a multivalued attribute contains the members CNs Nodes containing groups (one per line) : cn=administrateurs,ou=groups,ou=nancy,dc=asrall,d Attribute holding group members : uniquemember 6