Pypw : A simple python password manager
Pypw est un script python qui a pour but de gérer simplement les mots de passes utiles pour nos différentes inscriptions sur le web.
Une mauvaise pratique que beaucoup adoptent par facilité est d’utiliser le même mot de passe pour tous leurs accès….
Ce petit script permet donc de générer un mot de passe par couple login/site et l’enregistre. La génération des mots de passes est basée sur un mot clef (« seed ») à paramétrer lors de l’installation du script. Les mots de passe sont générés sous la forme d’un hash sha1 et socké dans la homedir de l’utilisateur propriétaire du script ($HOME/.pypwrc).
Un autre interêt de ce script réside dans le fait que la perte du fichier .pypwrc n’est pas irréversible. En effet si le seed (mot clef) et le domaine ayant servi à la génération du mot de passe sont connus, celui-ci peut être regénéré.
Installation de Pypw
Python >= python2.5 doit être installé sur la machine. Si ce n’est pas le cas :
apt-get install python-minimal
Le script est versionné sur github :
wget http://github.com/Petteri/pypw/raw/master/pypw
Pour des questions de sécurité, un autre utilisateur avec un shell ne doit pas pouvoir lire votre fichier et utiliser pypw :
chown user pypw chmod 700 pypw touch ~/.pypwrc chmod 600 ~/.pypwrc
Configuration
Il suffit simplement de renseigner 3 variables à savoir :
vi pypw
DEFAULTUSERNAME = « user »
DEFAULTSEED = « keyword »
DEFAULTPASSWORDLENGTH = 10
Déplacez le script à l’emplacement de vos binaire ou éditez $PATH :
mv pypw /usr/bin/pypw
Utilisation
- Aide : pypw -h
- Génération d’un mot de passe pour un site : pypw -u yourlogin planet-libre.org
- Lister les mots de passes enregistrés : pypw -l
- Ajout d’ login/mot de passe existant pour un site : pypw -u user mysite.tld -a mypassword
- Spécifier la longueur du mot de passe : pypw -u user -n length mysite.tld
- Suppression d’un mot de passe : pypw -d mypassword
Voila en ce qui concerne les fonctionnalités principales de ce script qui n’a pas pour vocation d’être ultra secure, mais plutôt de permettre des bonnes pratiques en matière de gestion de mots de passes et ce simplement.
Voir le github de l’auteur : https://github.com/Petteri/pypw/
Version anglaise de ce billet sur nordbeastie.org.