Rudder est un outil que j’utilise depuis quelques années maintenant et qui évolue régulièrement. Voici un exemple de ce qu’il est possible de faire avec pour gérer ses clefs SSH.
Rudder, c’est quoi ?
Rudder est un outil de configuration continue et d’audit. Pour résumer, nous lui donnons des directives (règles, configurations, etc…) et il s’assurent qu’elles soient tout le temps appliquées de la façon dont nous les avons définies.
Gestion des clefs SSH :
Lorsque nous devons gérer un parc de machines Linux et que nous devons y autoriser nos clefs SSH, il est fastidieux d’établir une bonne gestion sans outils. Voici comment utiliser Rudder afin de déployer nos clefs SSH sur un groupe de machines.
Création d’une Directive :
Dans la partie Directive de Rudder, cliquez sur SSH authorised keys,
puis à droite sur le bouton Create with latest version afin de créer une nouvelle directive.
Vous pouvez changer le nom, et y ajouter une description et laissez le reste des options par défaut. Dans la partie parameters, vous disposez d’un ensemble de gestion des clefs SSH. Dans la partie SSH key management #1, voici les éléments à indiquer :
- Key tag : généralement le nom du propriétaire de la clef SSH (plus facile pour la gesion)
- Username : l’utilisataire système pour lequel la clef sera autorisée
- Key : la clef SSH publique ( cat .ssh/id_rsa.pub )
La section Flush SSH file consiste à supprimer les autres clefs SSH non définies dans Rudder. Je vous conseil fortement de l’activer.
Si vous avez plusieurs clef SSH à intégrer, cliquez sur le bouton d’ajout d’une nouvelle clef et répétez ainsi la procédure.
De cette façon, l’ajout ou la suppression des clefs se fait très facilement. Dans le cas où une personne ne doit plus avoir d’accès sur les machines, quelques clics suffisent à retirer sa clef. Terminez en cliquant sur le bouton Save.
Création d’une « Rule » :
Maintenant que la directive est créée, il faut créer une règle pour l’appliquer. Dans la section Rules, cliquez sur le bouton Create Rule.
Donnez lui un nom et cliquez sur Create.
Allez tout en bas et cliquer sur le bouton Select Directives. Dans la fenêtre qui s’ouvre, retrouvez la directive que vous venez de créer et cliquez sur le bouton + vert.
Faite de même pour le ou les groupes auxquels appliquer cette directive.
Terminez en cliquant sur le bouton Save.
C’est terminé !
Et oui c’est aussi simple que cela. Rudder va maintenant se charger d’importer ces clefs SSH dans le fichier .ssh/authorized_keys de l’utilisateur que vous avez renseigné et supprimer les clefs non présentes dans la directive.
Lorsque vous déploierez une nouvelle machine, il vous suffira de l’ajouter au groupe (Linux dans cet exemple) et Rudder y déploiera automatiquement les clefs SSH.
Rudder : https://www.rudder.io/fr/
Installation : https://docs.rudder.io/reference/5.0/installation/quick_install.html