Les gestionnaires de mots de passes sont devenus indispensable dans un internet où nos comptes se multiplient de jour en jour, il est actuellement impensable et totalement inconscient d'utiliser un seul mot de passe commun à tout ses comptes. Ce billet à pour but de présenter password-store, un gestionnaire de mot de passe pour systèmes Unix-like en ligne de commande récemment découvert et qui a le mérite de faire excellemment bien son travail !

Installation

Voici la méthode d'installation du gestionnaire de mot de passe selon votre système d'exploitation. Étant sous archlinux un simple sudo pacman -S pass a fait la chose :)

Ubuntu / Debian

$ sudo apt-get install pass

Fedora / RHEL

$ sudo yum install pass

openSUSE

$ sudo zypper in password-store

Gentoo

# emerge -av pass

Arch

$ sudo pacman -S pass

Mac OS

Disponible avec homebrew

$ brew install pass

FreeBSD

# portmaster -d sysutils/password-store

Configuration initiale

Vos mots de passes seront chiffrés à l'aide d'une clé PGP. Assurez vous d'avoir votre paire de clé disponible.

Voici les étapes à suivre pour configurer correctement votre répertoire de mots de passe :

  • pass init <votreclépgp> => Création du répertoire dans ~/.password-store
  • pass git init => Initialisation du dépôt git qui servira à versionner vos mots de passes
  • pass git remote add origin votreserveur:lenomdudépôt => Configurer un dépôt distant sur serveur qui recevra vos modifications

Ensuite, pour ne pas avoir à taper la phrase de passe PGP nous allons ajouter le démarrage du démon 'gpg-agent' avec i3. Ainsi, dans votre configuration i3 ajoutez une ligne du style

exec_always --no-startup-id "eval $(gpg-agent --daemon)"

Et mettez ceci dans votre fichier ~/.gnupg/gpg-agent.conf :

pinentry-program /usr/bin/pinentry-qt4
no-grab
default-cache-ttl 1800

Voilà, tout est prêt ! Vous pouvez maintenant utiliser votre nouveau gestionnaire de mot de passe.

Utiliser absolument un dépôt distant privé accessible à vous seul !

Utilisation

Pour l'utiliser, rien de trop complexe ! Les commandes sont assez intuitives, voyez par vous même :

  • pass insert Catégorie/nom_du_pass=> Ajouter un mot de passe dans la catégorie "Catégorie"
  • pass generate nom_du_pass nombredecaractères => Génére le mot de passe correspondant

Habituellement on ajoute les informations complémentaires comme l'adresse du site et l'identifiant de la façon suivante dans les entrées que vous pouvez renseignez avec l'option --multiline ou -m dans insert :

unmotdepasse
url: example.org
username: someone@example.org
secret question : What is your childhood best friend's ? RMS !

Voici les différentes commandes correspond aux usages que l'on peut rencontrer :

  • pass => sans autre argument permet de dresser l'arborescence de vos mots de passe
  • pass -c chemindupass/nomdupass => permet d'afficher le mot de passe 'nomdupass' et de le copier
  • pass edit chemindupass/nomdupass => éditer le mot de passe dans son éditeur par défaut
  • pass rm chemindupass/nomdupass => supprime l'entrée du répertoire après confirmation
  • pass mv chemindupass/nomdupass nouveaucheminpass/nouveaunompass => modifier le nom et/ou le chemin d'un pass dans l'arborescence du répertoire
  • pass git push => pousser ses modifications sur le dépôt git distant

Entrée rofi ou dmenu

Si vous souhaitez l'intégrer dans rofi ou dmenu cela est possible grâce aux utilitaires 'rofi-pass' et 'passmenu

Vous pouvez ajouter un raccourci clavier en ajoutant une entrée dans votre fichier de configuration i3 comme suit : bindsym $mod+o exec rofi-pass ou passmenu suivant ce que vous utilisez.

Un bug connu est une mauvaise utilisation de la disposition du clavier lors de l'utilisation de l'autoremplissage si vous utilisez un fichier de configuration pour Xorg afin de charger votre configuration de clavier. Pour y remédier préférez l'utilisation de la commande setxkbmap avec les paramètres adaptés à votre disposition de clavier. Vous pouvez par exemple ajouter un lancement automatique de cette commande en ajoutant une entrée dans votre configuration i3.

Récupération du répertoire sur un autre appareil

Grâce à git, mettre en place votre répertoire de mot de passe sur une autre machine est très rapide.

  • pass init
  • pass git init
  • ensuite pass git remote add origin votreserveur:lenomdudépôt
  • terminez par un simple pass git pull et voilà !

Post précédent