Table des matières

Teampass

Teampass est un gestionnaire de mot de passe collaboratif. Chaque utilisateur fait partie d'un ou plusieurs groupes, et chaque groupe a accès à un lot de mots de passe.

Installation

Prérequis

Vérifier que les paquets suivants sont installés :

Sur Debian Jessie :

apt-get install php5-mcrypt

Vérifiez aussi que votre serveur a un certicat ssl en fonctionnement (même auto-signé), la connexion en https est obligatoire.

Préparer la base de donnée

L'installation se fait via mysql et phpmyadmin, mais cela peut être adapté.

Ouvrir Phpmyadmin, sélectionner Bases de données (ou Databases si ce n'est pas francisé), créer une nouvelle base du nom qu'on veut (teampass par exemple) en sélectionnant l'encodage UTF8_general_ci.1)

Sélectionner l'onglet Privilèges. Cliquer sur ajouter un nouvel utilisateur (en dessous de la liste des utilisateurs), par exemple master_of_teampass. Pour le client, garder localhost. Choisir ou générer un mot de passe et le noter !

Ne donner aucun droit à cet utilisateur lors de la création.

Éditer ensuite ses privilèges, choisir “Privilèges spécifiques à une base de données” (en bas de la fenêtre), sélectionner la table de teampass, tout cocher, exécuter.

Le dossier Teampass

Télécharger et dézipper la dernière version de Teampass dans /var/www. Renommer le dossier comme on souhaite voir le lien apparaitre par la suite (par exemple “teampass”, en minuscule).

Vérifier que le dossier appartient bien à www-data et qu'il est écrivable

chown -R www-data:www-data ./teampass
chmod -R gu+rw ./teampass

En cas de souci lors de l'installation à propos de : mysqli_fetch_all

Modifier le fichier d'installation ./teampass/install/install.js :

  • Chercher “function*mysqli_fetch_all”,
  • Enlever ce morceau.
  • Enregistrer.

Modifier aussi le fichier d'installation ./teampass/install/install.php :

  • Chercher la ligne <li>PHP function "mysqli_fetch_all" is available&nbsp;<span id="res2_check9"></span></li>
  • L'enlever.
  • Enregistrer.

Pour ce mysqli_fetch_all, l'idéal serait d'avoir php configuré avec les bonnes options, mais ça parait pas très grave…

Temps d'execution de PHP

Lors de la phase finale d'installation, il risque d'y avoir une erreur sur PHP “Maximum execution time”. Pour modifier cela :

Finalisation

Aller à l'adresse web de teampass, par exemple https://khaganat.net/teampass . Il redirige automatiquement vers le dossier d'installation.

Lancez l'installation.

Sur la première fenêtre, vérifiez le chemin, (dans une version, il y avait une barre oblique de trop). Cliquez ensuite sur “Launch” et corrigez ce qui pourrait ne pas aller.

Seconde fenêtre :

Troisième fenêtre :

Ensuite ça va tout seul, faites next jusqu'à start et connectez-vous !

En cas d'erreur lors de l'accès à la page teampass après l'installation, vérifier le fichier teampass/includes/settings.php. Un mot de passe avec des caractères accentués peut avoir été mal interprété et noté n'importe comment dans ce fichier.

Premier pas

Le premier admin est “admin”, avec le mot de passe renseigné lors de l'installation. Teampass est alors en mode maintenance, aucun utilisateur ne peux se connecter. C'est le moment de peaufiner les détails.

Créez des utilisateurs et des groupes, créez aussi un administrateur avec un nom moins commun que “admin”. L'administrateur peut gérer le fonctionnement général de Teampass mais pas accéder aux mots de passe. Créez-vous un autre compte pour modifier les mots de passes.

Activer LDAP

Je ne sais pas trop le détail des options, mais pour qu'un utilisateur se connecte, il faut d'abord qu'il soit créé via teampass, avec le même nom que dans ldap. Dans ce cas, teampass vérifie s'il existe et demande pas de mot de passe spécial.

http://teampasswordmanager.com/docs/ldap-authentication/

Teampass bloque sur les mots de passe contenant guillemets et apostrophes. Éditer la table mysql (via phpmyadmin par exemple) devrait régler ça. Je n'ai par contre pas trouvé les autres réglages pour que ldap fonctionne…

Aux dernières nouvelles, si Teampass était connecté à LDAP, les utilisateurs basiques ne pouvaient plus se connecter (comme si leur mot de passe était faux). Les admins pouvaient se connecter pour virer ldap dans les options de connexion ; tout rentrait alors dans l'ordre…

Restaurer Teampass

En cas de souci, que sauver de Teampass, et comment le réinstaller ?

À sauver régulièrement

Pour restaurer/mettre à niveau

Téléchargez et dézippez la dernière version de Teampass. Si vous démarrez d'un serveur neuf,

Copiez de l'ancien dossier vers le nouveau les données suivantes :

Rendez-vous à l'adresse http://your_domain/teampass/install/upgrade.php et suivez les indications. Tout devrait bien se passe.

Si vous ré-installez Teampass sur un autre nom de domaine, après avoir remis la base de donnée en place et AVANT l'upgrade, videz la table “teampass_misc”, elle contient le nom de domaine et devrait être régénéré lors de la mise à jour.

1)
C'est ce que le site officiel préconise, je ne sais pas si c'est forcément “le mieux” mais dans le doute…