## page was renamed from CransTechnique/CransPasswords Cranspasswords est un petit script à usage des membres actifs (nounous, CA, trésoriers, apprentis etc) permettant de partager ses mots de passe, tout en contrôlant les accès. Il s'appuie intensivement sur [[WikiInformatique/ConnexionSsh|ssh]] et [[doc_gpg_pas_ecrite|gpg]]. Les clients se connectent via une connexion sécurisée (ssh) à un serveur centralisant les mots de passe. Pour éviter que la compromission d'un serveur ne fournisse (rapidement) les mots de passes, ceux-ci sont chiffrés avec la clé publique des propriétaires (par exemple l'ensemble des nounous dans le cas du mot de passe root). Un ensemble de personnes qui doivent accéder aux mêmes mot de passe est appelé "rôle" (par exemple les rôles {{{nounous}}}, {{{apprentis}}}, {{{ca}}}). Le chiffrement d'un mot de passe lisible par un rôle est effectué lors de l'enregistrement (ou mise à jour) de ce mot de passe par un des membres du rôle autorisé en écriture, avant l'envoi au serveur. Ainsi, le serveur ne stocke ni ne voit transiter aucun mot de passe qu'il serait en mesure de déchiffrer. Ce fonctionnement impose également que la personne chiffrant les mots de passe ait une confiance suffisante (au sens PGP) en toutes les personnes du rôle cible. Ce script a maintenant vocation à être utilisé ailleurs qu'au Crans (respos bde, admin federez ?), la page ci-dessous présente un guide rapide pour le configurer dans le cas du Crans uniquement. == Getting Started == === PGP === Premièrement, il vous faut une clé PGP. Si vous n'en avez pas encore, il est facile [[http://www.siteduzero.com/tutoriel-3-33316-la-cryptographie-facile-avec-pgp.html|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é PGP. === Accès au serveur === Au crans, le serveur de stockage est {{{vert}}}. Une copie des données est présente sur le serveur {{{ovh}}}, en lecture seule uniquement (en cas d'urgence). {{{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 -W vert.adm.crans.org:22 ForwardX11 no }}} (remplacer '''dstan''' par son login crans) Il n'est normalement pas nécessaire d'indiquer de configuration particulière pour {{{ovh}}}, si ce n'est de corriger le {{{User}}} ssh s'il ne correspond pas à celui de la machine. Il est également conseillé de disposer d'une clé ssh (avec un agent) afin d'éviter un nombre conséquent de demandes de mots de passe de connexion. Plus d'informations dans WikiInformatique/AstucesSsh. === Installation === Cloner [[http://git.crans.org/git/cranspasswords.git|le dépôt git]] sur votre ordinateur. Suivre les instructions du README (partie ''Installation et configuration du client''). == Utilisation == {{{ cranspasswords --help }}} == Si vert n'est plus joinable == Une copie '''en lecture seule''' est (r)synchronisée sur {{{ovh.crans.org}}}. On peut l'utiliser pour à l'aide de l'option {{{--server}}} (ou {{{-s}}}): {{{ cranspasswords.py --server ovh --list }}} == Todo == * Faire le ménage dans les fichiers * Mieux attribuer les droits (rôles) * Faire un truc plus propre que le rsync sauvage * Remplir notre liste de rôles et fingerprint via ldap, automatiquement * (./) Faire quelque chose pour que les connexions soient moins lentes * (./) Logguer les modifications