Keyringer permet de gérer et de partager des secrets en utilisant GnuPG et Git de façon distribuée.

Installation

Keyringer nécessite Bash, Git, GnuPG et la collection de programmes habituellement utilisés dans des scripts shell.

Sous Debian, c'est dans le paquet keyringer (surprise !). Sinon, il faut décider d'un endroit où le mettre sur son filesystem. Pour récupérer le code :

git clone git://git.sarava.org/keyringer.git

Ensuite, on peut soit ajouter le répertoire du dépôt qu'on vient de cloner dans la variable d'environnement $PATH, soit installer le programme sur son système avec un basique

cd keyringer
sudo make install

Ajouter le trousseau de Nos oignons

Une fois que keyringer est dans le $PATH, on peut ajouter le trousseau de l'équipe admin. sys. de Nos oignons. Pour ça, il faut avoir un clone de ce wiki quelque part, et utiliser ensuite la commande init :

keyringer <name> init <path>

Par exemple, ça peut donner :

keyringer oignons-admin init ~/nos-oignons.net/wiki-admin/.keyringer

Cette commande modifie ~/.keyringer/config.

De plus, il faut impérativement que vous ayez les clefs GPG des autres administrateurs dans votre trousseau, sous peine de voir un message de ce genre :

Fatal: no such key <fingerprint> on your GPG keyring.

Les plus avisés (ou flemmards) automatiseront la récupération des clefs ainsi :

awk '{print $2}' path/to/wiki-admin/.keyringer/config/recipients/default | xargs gpg --recv-keys

Enfin, il est important que votre trousseau soit tenu à jour. Ça peut être une bonne idée d'utiliser parcimonie.

Voir la liste des fichiers

Pour voir la liste des fichiers qui font partie du trousseau :

keyringer oignons-admin ls

Déchiffrer un fichier

Pour déchiffrer un fichier :

keyringer oignons-admin decrypt <file>

Par exemple, pour déchiffrer le fichier services :

keyringer oignons-admin decrypt services

Modifier des secrets

Pour modifier des secrets, le plus simple est de faire :

keyringer oignons-admin edit <file>

Cela va démarrer un éditeur de texte avec le contenu du fichier. Une fois les modifications effectuées, on quitte l'éditeur de texte, et Keyringer s'occupera de le chiffrer tout comme il faut.

Ensuite, il faut pousser enregistrer et pousser les modifications ! Soit en utilisant Git directement, soit via :

keyringer oignons-admin git commit -m "Ajout du mot de passe pour ACME" .
keyringer oignons-admin git push origin master