Devenir SysAdmin d’une PME - La gestion des mots de passe
Nouveau billet de ma série "Devenir SysAdmin d’une PME" avec cette fois ci, la gestion des mots de passe.
Dans ce billet, les annuaires ldap et les mots de passe unique pour différentes applications sont exclus de ce billet, je ne parlerai que des mots de passe classique dont a besoin le sysadmin, à savoir les mots de passe compte admin pour les machines et les comptes liés aux services.
Gestion des mots de passe...
Quand j’ai repris le service, la tranmission des mots de passe s’est fait de façon assez simple : export des mots de passe stockés dans Firefox pour tous les mots de passe webs, communication des deux / trois mots de passe (utilisateur et root) utilisés un peu partout, les autres mots de passe étant stockés dans le wiki...
Mais ça c’était avant.
Mise en place d’une gestion des mots de passe
L’ayant fait pour moi-même, il y a quelques années, avec un passage sous Keepaas et la réinitialisation et individualisation de TOUS mes mots de passe, j’ai décidé de faire la même chose. A savoir :
– Mettre en place un conteneur Keepass
– Réinitialiser un à un tous les mots de passe pour chaque outil
Pourquoi Keepass ? Mon objectif était simple : avoir une gestion des mots de passe simple et efficace. Et je connaissais Keepass, quelques-uns des membres de mon équipe le connaissais aussi et l’utilise à titre personnel, nous sommes donc partie sur cet outil.
J’ai donc créer un conteneur, et ajouter un à un les comptes en réinitialisant et regénérant les mots de passe de la taille maximum et aléatoire dans Keepas. Long et fastieux, mais nécessaire. Pour le stockage de façon centralisé, le conteneur Keepas de référence est déposé dans un espace dédidé sur notre instance Gitlab (qui est également utilisée pour ses différents outils en dehors de la gestion du code, voir mon billet Lifehacking - Gitlab, outil idéal ?. Mais il aurait pu tout à fait être envisagé le dépôt du conteneur sur un serveur Nextcloud et avoir une synchronisation avec le client sur les différents PC des collaborateurs ayant besoin de ces mots de passe.
Si c’est à refaire et ce qu’il reste à améliorer...
Le problème n’est pas dans le partage : les personnes qui doivent connaître la phrase de passe ont également accès au dépôt Gitlab. Pour gérer des besoins plus fins, nous avons créer différents conteneurs Keepass, un par service, pour gérer des niveaux et cloisonner les mots de passe. Le problème est dans la gestion des conflits : il faut se coordonner quand on doit mettre à jour le contenu d’une base Keepaas. On ne peut pas être deux à ajouter un compte ou modifier un mot de passe, il faut le faire à tour de rôle...
Sur ce point, je commence donc à regarder du côté des autres outils, avec un mode web / en ligne et j’ai identifié deux outils :
– HashiCorp Vault (Billet annonçant cet outil) par la société qui est derrière Vagrant, Terraform...
– Bitwarden une alternative à LastPass, en mode web
– Nextcloud - Passman
Et il y a également les bonnes pratiques pour les mots de passes root des machines. Les connexions aux serveurs du parc se font via SSH avec une connexion par clef et des droits "sudo", mais il y a des comptes root sur des machines pour lesquelles je n’ai pas encore définie de politique de gestion des mots de passe (il faut que je me renseigne sur l’état de l’art à ce sujet).
Les mots de passes des comptes et applications webs eux sont plus faciles à gérer / changer, mais il faut trouver un bon équilibre dans la rotation des mots de passe (Keepass proposant de définir des dates d’expiration, cela aide bien) et c’est une tâche longue et fastidieuse à planifier régulièrement...