
Clipperz est un gestionnaire de mot de passe libre. Adapté pour un usage personnel et familial. Une interface web sécurisée et des algorithmes forts.
Cas d'usage concret
Vous cherchez un gestionnaire de mots de passe libre à héberger vous-même : voici comment installer Clipperz sur Debian 7.
Clipperz est un gestionnaire de mot de passe open source sous licence AGPL v3.
La force de Clipperz est la possibilité de l’héberger soi-même et d’en modifier le code source.
Adapté pour l’usage personnel et familiale, il propose des fonctionnalités intéressantes!
Cet article se base sur le Github de Clipperz, et sera installé sur une distribution Debian 7.
Pré-requis : Installation et compilation
Installation d’un serveur « LAMP » classique :
apt-get install apache2 mysql-server php5-mysql php5
Installation de git et de python :
apt-get install git-core python-git python-dulwich php-services-json
Télécharger le projet « password–manager » dans le Github de clipperz :
git clone git://github.com/clipperz/password-manager.git
Se rendre dans le dossier :
cd password-manager
Exécuter la compilation:
./scripts/build install --backends php --frontends beta
cleaning up …
MODULE: beta
MODULE: php
PHP builder - RUN
frontend [beta]: compressing JS code
frontend [beta]: compressing JS code
frontend [beta]: compressing CSS
frontend [beta]: compressing JS code
[PHP builder - beta] index.html checksum: 43ec93f292a1275928a6d657da2dc2d8 (md5)
[PHP builder - beta] index.html checksum: 38ee8108a1caed357ad76092a46d6b211dd79d11 (sha1)
[PHP builder - beta] index.html checksum: cdbef767238dec531ddc1da9d803b98681c6fbb6d6adac99266385c13b8f3211 (sha256)
Le checksum de l’index apparaît, conservez-le car il permet de savoir si vous êtes corrompu ou non !
Installation de clipperz
Le chemin d’installation de Clipperz sera défini dans le dossier :
mkdir /var/www/clipperz/
cd /var/www/clipperz/
Copier l’ensemble de la compilation précédente à l’intérieur :
cp -R target/php/* /var/www/clipperz/
Le dossier appartiendra au serveur web :
chown -R www-data:www-data /var/www/clipperz/
Lancer mysql en ligne de commande :
mysql -p
=>Enter password:
=>Welcome to the MySQL monitor. Commands end with ; or g.
=>Your MySQL connection id is 100
=>Server version: 5.5.33-0+Wheezy1 (Debian)
Les requêtes SQL à ajouter seront les suivantes :
mysql> create database clipperz;
Query OK, 1 row affected (0.02 sec)
mysql> grant all privileges on clipperz.* to 'clipperz'@'localhost' identified by "clipperz";
Query OK, 0 rows affected (0.14 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.06 sec)
mysql> exit
Bye
Le fichier de configuration de clipperz devra contenir les informations de la base de données :
nano /var/www/clipperz/configuration.php
Retrouver cette partie dans la configuration du fichier et remplacer « password » :
[...]
$configuration['db_encoding'] = 0;
// edit the information below to match your database settings
$configuration['db'] = 'clipperz'; // database name
$configuration['host'] = 'localhost'; // database host
$configuration['user'] = 'root'; // database user
$configuration['pass'] = 'password'; // database password
$configuration['port'] = '3306'; // database port
[...]
Interface web avec « POG »*
Installation de la base de données avec « php object generator«
Lancez avec votre navigateur : http://votre\_domaine/setup/index.php

Laissez par défaut les options « Tables » et « Tests« , puis cliquez sur « POG me up! »
La suite vous informe que tout s’est bien passé :
Initializing POG Setup....OK!
File Structure....OK!
Configuration Info....OK!
Storage Status
Aligning [record] with table 'record'....OK!
Aligning [user] with table 'user'....OK!
Aligning [onetimepassword] with table 'onetimepassword'....OK!
Aligning [onetimepasswordstatus] with table 'onetimepasswordstatus'....OK!
Aligning [recordversion] with table 'recordversion'....OK!
POG Essentials
record
Save()….OK! SaveNew()….OK! Delete()….OK! GetList() Limit….OK! Sorting….OK! DeleteList()….OK! Optimizing….OK! ***
user
Save()….OK! SaveNew()….OK! Delete()….OK! GetList() Limit….OK! Sorting….OK! DeleteList()….OK! Optimizing….OK! ***
onetimepassword
Save()….OK! SaveNew()….OK! Delete()….OK! GetList() Limit….OK! Sorting….OK! DeleteList()….OK! Optimizing….OK! ***
onetimepasswordstatus
Save()….OK! SaveNew()….OK! Delete()….OK! GetList() Limit….OK! Sorting….OK! DeleteList()….OK! Optimizing….OK! ***
recordversion
Save()….OK! SaveNew()….OK! Delete()….OK! GetList() Limit….OK! Sorting….OK! DeleteList()….OK! Optimizing….OK! POG Relations PreRequisites
record
Is properly connected (OK) ***
user
Is properly connected (OK) ***
onetimepassword
Is properly connected (OK) ***
onetimepasswordstatus
Is properly connected (OK) ***
recordversion
Is properly connected (OK) POG Relations
record
Addrecordversion()….OK! GetrecordversionList()….OK! Delete(recordversion)….OK! Save(recordversion)….OK! Set(recordversion)List….OK! Setuser()….OK! Getuser()….OK! ***
user
Addrecord()….OK! Addonetimepassword()….OK! GetrecordList()….OK! GetonetimepasswordList()….OK! Delete(record)….OK! Delete(onetimepassword)….OK! Save(record)….OK! Save(onetimepassword)….OK! Set(record)List….OK! Set(onetimepassword)List….OK! ***
onetimepassword
Setuser()….OK! Setonetimepasswordstatus()….OK! Getuser()….OK! Getonetimepasswordstatus()….OK! ***
onetimepasswordstatus
Addonetimepassword()….OK! GetonetimepasswordList()….OK! Delete(onetimepassword)….OK! Save(onetimepassword)….OK! Set(onetimepassword)List….OK! ***
recordversion
Setrecord()….OK! Getrecord()….OK! CHECKED 5 OBJECT(S). FOUND 0 ERROR(S). HURRAY! -----------------
Vous pouvez cliquer sur le bouton « Proceed » et c’est terminé !
Le plugin Base 64 peut être activé via « manage plugin » et « install ».
Éditez le fichier de configuration :
[...]
$configuration['db_encoding'] = 1;
Le résultat dans « POG » :
BASE64 Status
Checking MySQL function....OK!
Checking db_encoding status....OK!
BASE64 Status...OK!
---------------------------------------------------
Copier l’ensemble du répertoire « beta » à la racine du site web :
cp -R beta/* /var/www/clipperz/
Quelques conseils pour la fin de l’installation :
- Vous pouvez maintenant déplacer ou supprimer votre fichier « setup » afin de le rendre inaccessible.
- La création d’un fichier robots.txt qui interdit l’indexation de votre Clipperz exemple :
User-agent: *
Disallow: /
- Désactiver les inscriptions dans le fichier « index.php » :
Remplacer case « registration » par case « disabled_registration«
Une fois terminé votre interface web Clipperz est prête !

Amusez-vous bien.
Conclusion
J'ai présenté ici l'installation de Clipperz, un gestionnaire de mots de passe open source auto-hébergeable, sur une distribution Debian 7 avec une stack LAMP classique. La compilation du projet, la mise en place de la base de données via l'outil POG et l'activation du plugin Base64 permettent d'obtenir une interface web fonctionnelle en quelques étapes. Cette solution offre un bon compromis pour un usage personnel ou familial tout en gardant le contrôle total sur ses données sensibles.
