dotProject & LDAP (Active Directory plus précisemment)

closeCet article a été publié il y a 14 ans 22 jours, il est donc possible qu’il ne soit plus à jour. Les informations proposées sont donc peut-être expirées.

C’est pas que je sois fanatique des outils de ce genre là, mais bon, parfois, le boss veut ça pour hier.
Ca permet de faire euh… de la gestion de projets, c’est open-source, tout ça. Voyez ici : http://www.dotproject.net/
Bon bref, on s’en fout. Si vous lisez cet article c’est que vous comptez l’installer, je suppose.
Je donne 2/3 remarques d’installation, notamment la configuration au LDAP de Microsoft : Active Directory.

Dézip, install etc

Pour monter le site, je passe en quelques mots.

  • Vous dézippez le .tar.gz (pas de paquet Debian ; et puis c’est généralement en retard de versions pour ce genre d’outils). Par exemple dans /var/www
  • Vous avez en amont un serveur MySQL et Apache en état. Et éventuellement créé un schéma de base dotproject, un admin DB dédié et tout le toutim. Exemple :

    create database dotproject;
    create user 'dpadmin'@'localhost' identified by 'mon_passwd_qui_tache';
    grant all on dotproject.* to 'dpadmin'@'localhost';
  • Bien sûr, le paquet php5-ldap est installé et LDAP activé dans votre conf PHP :

    votre.serveur:/srv/www/dotproject# grep -r ldap /etc/php5/
    /etc/php5/conf.d/ldap.ini:extension=ldap.so
    /etc/php5/cli/conf.d/ldap.ini:extension=ldap.so
    /etc/php5/apache2/conf.d/ldap.ini:extension=ldap.so
    
  • De même pour php5-mysql…
  • Vous accédez à http://votre.serveur/dotproject/install/
  • L’install se déroule paisiblement. Vérifiez que les modules qui vous intéressent sont bien détectés. Ajoutez les permissions sur /files et créez un fichier /includes/config.php vide, modifiable par www-data.
    Bref, du classique.
  • Une fois installé, le mot de passe par défaut du compte admin est passwd. J’ai cherché quelques temps :D.

A la fin, supprimez le répertoire d' »install ».

Conf Active Directory

Dans le menu d’admin, vous configurerez la connexion à l’AD comme suit (dans Administration Système -> Configuration système) – si votre LDAP est en clair (port 389) :

Conf dotproject Active Directory
Conf dotproject Active Directory

Remarques :

  • Méthode d’authentif… : LDAP
  • Avant d’oublier : BIEN COCHER LA CASE « LDAP autorise également les connexions standards ». Sinon, si vous ratez votre conf LDAP et déconnectez votre compte admin => Boum (probablement).
  • Hôte LDAP : j’ai galéré longtemps en mettant le FQDN, comme préconisé un peu partout. C’est passé lorsque j’ai mis l’IP ! Arg !
  • Base DN LDAP : le noeud racine des utilisateurs qui pourront se signer. Par exemple : ou=Users,cn=domaine,cn=fr
  • Filtre Utilisateur LDAP. Pour un AD : (sAMAccountName=%USERNAME%). Ca veut dire : on comparera la variable %USERNAME% au champ LDAP sAMAccountName, qui est le login dans un AD.
  • Recherche Utilisateur LDAP : le chemin complet pour atteindre l’utilisateur capable de faire la recherche dans l’AD. Exemple : CN=sonlogin,CN=Users,dc=domaine,dc=fr

Mais d’où toute cette syntaxe sort-elle ???? non non, pas DT… Je vous recommande « AD Explorer« . Ca permet de vous promener dans votre AD et de connaître le DN (Distinguished Name) de n’importe quel élément.
Le cas standard est que les utilisateurs sont dans Ou=Users,dc=votredomaine,dc=com. Mais bon, quelques fois, on ose le changement.

Traduction

Vous trouverez le paquet français sur le site officiel. Il faut dézipper dans /locales, ça crée un sous-répertoire « fr ». Reste à mettre le français par défaut aux utilisateurs dans un des menus d’admin.

Et voilà, c’était « j’ai pris aucune note d’installation ni de photo d’écran donc je torche un papier vite fait mais ça peut rendre service ».
A+

8 comments

    1. euuuuh, ‘sais pas.
      Patron a dit « dotproject ».
      Redmine, je me le note pour une autre occaz’. Ruby On Rails VS PHP. Ca me passe bien au-dessus tout ça.

      Bon, j’ai regardé vite fait. redmine ne serait pas un peu orienté bug tracking system ? pas vraiment gestion de projets au sens : temps, planning etc

  1. alors si l’patron il a dit …
    redmine gère aussi les projets ex : gantt
    mais effectivement les bugs aussi …
    en fait je posais la question juste pour savoir avant de pleinement utliser redmine 😀

    @+ et bon projet 😉

  2. Bonjour,
    Merci ‡ toi michauko pour ces infos prÈcieuses.
    J’ai tout paramÈtrÈ pour LDAP/AD, mais il me dit « invalid username ».
    Je n’ai rien mis dans DotProject, ‡ part le user admin par dÈfaut.
    Une idÈe ?

    1. Salut. Non je crois que dotproject et un AD j’ai laissé tomber. La doc, de tête, dit « TODO » pour un ad qui est mon cas. Donc je me suis meme pas risqué 🙂

  3. Bon, c’est bon, tout marche !!! Il ne faut pas oublier bien sûr de :
    1) Installer le package LDAP pour PHP5
    2) Rebooter colmplètement son serveur
    J’ai utilisé ce qui est dit plus haut (mais il faut vérifier les chaines avec AD Explorer) , car selon les sites, la gestion de l’AD n’est pas forcément la même :
    exemple pour moi :
    Base DN LDAP : OU=Users,OU=SITEA,OU=masociete,DC=masociete,DC=net
    Car les Users sont déclarés à cet endroit.
    Filtre User LDAP : (sAMAccountName=%USERNAME%) –> Obligatoire pour un LDAP/AD. La encore, bien vérifier avec AD Explorer que le champ sAMAccountName contient bien le nom d’un user trusted (nom peut importe, mais qui ait les droits de lecture de l’AD, avec un mot de passe compliqué qui « never expire ».
    Recherche Utilisateur AD : CN=qvn420,OU=Users,OU=SITEA,OU=masociete,DC=masociete,DC=net –> qvn420 est un user trusted qui a les droits de se logguer , donc de lire l’AD.
    Là encore, le USER est de type CN, sous le OU . à vérifier que dans votre AD c’est pareil !!!
    Recherche Mot de Passe User LDAP : mettre le mot de passe du user trusted.

    C’est tout !

  4. Est ce que quelqu’un sait attribuer les groupes aux utilisateurs dès lors que l’on utilise AD (ou LDAP?)
    Merci par avance.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.