Cranspasswords est un petit script à usage des nounous (et à l'avenir au CA et apprentis) permettant d'obtenir les mots de passe de certains services et d'autres informations privées.
Les mots de passe sont stockés sous forme de fichiers chiffrés sur vert. Les fichiers sont chiffrés de sorte que chaque personne autorisée puisse le déchiffrer avec sa clé privée.
Getting Started
PGP
Premièrement, il vous faut une clé gpg. Si vous n'en avez pas encore, il est facile d'en créer une nouvelle.
Vous devrez alors communiquer l'empreinte (fingerprint) de votre clé à votre RTC préféré puis lui demander de signer votre clé et de rechiffrer les fichiers que vous avez le droit de lire.
Il est obligatoire d'avoir une phrase de passe sur sa clé gpg.
Accès à vert
vert (aka ldap) est une machine du réseau adm, on ne peut donc y accéder directement. Il faut donc modifier son fichier .ssh/config afin de permettre un accès depuis un serveur intermédiaire (ici vo):
Host vert.adm.crans.org User dstan ProxyCommand ssh dstan@vo.crans.org "nc vert.adm.crans.org 22" ForwardX11 no
Il est également plus que conseillé de disposer d'une clé ssh afin d'éviter un nombre conséquent de demandes de mots de passe de connexion. Dans le même esprit, il peut être utile d'avoir une connexion ssh maître vers vert ou vo afin de rendre les requêtes un poil plus rapides.
Plus d'informations dans WikiInformatique/AstucesSsh.
Installation
Cloner le dépôt git sur votre ordinateur.
Copier clientconfig.example.py en clientconfig.py et modifier la variable user du fichier pour la faire correspondre à votre login crans (facultatif si vous êtes déjà connecté sur votre pc avec votre login crans.)
Il faut que ça donne :
'user' : 'passoire'
Utilisation
./cranspasswords.py --help
Pour pouvoir exécuter cranspasswords de n'importe où dans le système de fichiers, il est possible de le mettre dans son PATH. Ceci se fait del a manière canonique suivante :
Créer un dossier bin à un endroit bien choisi (typiquement, dans votre home) (vous pouvez choisir un autre nom)
Ajouter la ligne export PATH=$PATH:~/bin dans le fichier de configuration de votre shell (.bashrc, .zshrc, …)
Vous pouvez également sourcer le fichier cranspasswords_bash_completion pour avoir la bash-complétion sur cranspasswords. (_cranspasswords fournira l'équivalent aux utilisateurs de zsh)
En cas de panne du réseau/vert
Une copie en lecture seule est (r)synchronisée sur ovh.crans.org. On peut l'utiliser pour à l'aide de l'option --server:
./cranspasswords.py --server ovh --list
Todo
- Faire le ménage dans les fichiers
- Mieux attribuer les droits (rôles)
Faire quelque chose pour que les connexions soient moins lentes, même à travers vert (passer à la main, via script le ssh_config avec tunnelling et ControlMaster)
Logguer les modifications