AlphaHydrae.ssh-key
Clé SSH Ansible
Rôle Ansible qui génère une clé SSH pour un utilisateur.
En réglant ssh_key_root_link
sur true
, la clé sera également liée par un lien symbolique dans le répertoire .ssh de l'utilisateur root.
Variables du Rôle
Propriétés de la clé SSH
ssh_key_user
(ouuser
) - obligatoire - L'utilisateur pour lequel générer une clé SSH (par défaut la valeur de la variableuser
).ssh_key_bits
[entier]
- Le nombre de bits dans la clé générée (par défaut 8192).ssh_key_comment
- Le commentaire à la fin du bloc de clé SSH (par défaut{{ ssh_key_user }}@{{ ansible_hostname }}
, par exemplejdoe@monordinateur
).
Emplacement de la clé SSH de l'utilisateur non-root
ssh_key_dir
- Le répertoire .ssh où la clé sera générée (par défaut{{ host_user_homes }}/{{ ssh_key_user }}/.ssh
, oùhost_user_homes
est fourni par le rôle AlphaHydrae.multipass).ssh_key_file
- L'emplacement du fichier de clé SSH (par défaut{{ ssh_key_dir }}/id_rsa
).
Emplacement de la clé SSH de l'utilisateur root
ssh_key_root_dir
- Le répertoire .ssh de l'utilisateur root (par défaut{{ host_root_home }}/.ssh
; la variablehost_root_home
est fournie par le rôle AlphaHydrae.multipass).ssh_key_root_file
- L'emplacement du fichier de clé SSH de l'utilisateur root (par défaut{{ ssh_key_root_dir }}/id_rsa
).
Variables de lien symbolique root
ssh_key_root_link
[boolean]
- Si le lien symbolique doit être créé pour la clé générée dans le répertoire .ssh de l'utilisateur root (par défautfalse
; n'a aucun effet sissh_key_user
est l'utilisateur root).
Dépendances
Le rôle AlphaHydrae.multipass est utilisé pour déterminer le répertoire de base où se trouvent les répertoires personnels des utilisateurs.
Le rôle définit les faits suivants avec des valeurs par défaut raisonnables en fonction de la plateforme de l'hôte cible :
host_root_user
- Le nom d'utilisateur de l'utilisateur root (par exempleroot
).host_root_group
- Le groupe de l'utilisateur root (par exempleroot
).host_root_home
- Le répertoire personnel de l'utilisateur root (par exemple/root
).host_user_homes
- Le répertoire de base où se trouvent les répertoires personnels des utilisateurs (par exemple/home
sur Linux ou/Users
sur OS X).
Exemple de Playbook
- hosts: servers
roles:
- role: AlphaHydrae.ssh-key
ssh_key_user: jdoe
Propriétés personnalisées de la clé SSH
- hosts: servers
roles:
- role: AlphaHydrae.ssh-key
ssh_key_user: jdoe
ssh_key_bits: 2048
ssh_key_comment: ma-clé
Avec un utilisateur par défaut défini (par exemple, au niveau du playbook)
- hosts: servers
vars:
user: jdoe
roles:
- role: AlphaHydrae.ssh-key
Lier la clé dans le répertoire .ssh de l'utilisateur root
- hosts: servers
roles:
- role: AlphaHydrae.ssh-key
ssh_key_user: jdoe
ssh_key_root_link: true
ansible-galaxy install AlphaHydrae.ssh-key