GROG.authorized-key

Clé Autorisée

Ansible Galaxy Statut de la construction Dernière étiquette Chat Gitter

Un rôle pour gérer les clés autorisées.

Les rôles suivants ont été conçus pour fonctionner ensemble avec ce rôle :

  • user, pour gérer les utilisateurs.
  • sudo, pour gérer les droits sudo.

Le rôle management-user combine tous ces rôles en un rôle facile à utiliser.

Exigences

  • Les hôtes doivent être préparés pour l'utilisation d'ansible (avoir python,...)
  • Privilèges root, par exemple become: yes

Variables de rôle

Variable Description Valeur par défaut
authorized_key_list Liste des utilisateurs et de leurs clés (voir détails !) []
authorized_key_list_host Liste des utilisateurs et de leurs clés (voir détails !) []
authorized_key_list_group Liste des utilisateurs et de leurs clés (voir détails !) []
authorized_key_exclusive Valeur par défaut pour exclusive no
authorized_key_key_options Valeur par défaut pour key_options /
authorized_key_manage_dir Valeur par défaut pour manage_dir yes
authorized_key_state Valeur par défaut pour state present

Détails de authorized_key_list

authorized_key_list, authorized_key_list_host et authorized_key_list_group sont fusionnés lors de la gestion des clés autorisées. Vous pouvez utiliser les listes d'hôtes et de groupes pour spécifier des clés par hôte ou groupe d'hôtes.

La liste des clés autorisées vous permet de définir quels utilisateurs et leurs clés doivent être gérés. Chaque élément de la liste se compose d'un nom d'utilisateur et d'une liste de clés.

Variable Description Valeur par défaut
name Nom d'utilisateur /
authorized_keys Liste de clés /

Chaque clé de la liste des authorized_keys peut avoir les attributs suivants :

Variable Description Requis Valeur par défaut
exclusive Cette clé doit-elle être exclusive ? no authorized_key_exclusive
key Clé SSH yes /
key_options Options de clé SSH à préfixer à la clé no /
manage_dir Gérer le répertoire des authorized_keys ? no authorized_key_manage_dir
path Chemin pour la clé SSH no 'home_dir/.ssh/authorized_keys'
state État de la clé (présente/absente) no authorized_key_state
Exemple de authorized_key_list
authorized_key_list:
  - name: testuser1
    authorized_keys:
      - key: "{{ lookup('file', '/home/charlie/.ssh/id_rsa.pub') }}"
      - key: "{{ lookup('file', '/home/john/.ssh/id_rsa.pub') }}"
        state: absent
  - name: testuser2
    authorized_keys:
      - key: "{{ lookup('file', '/home/charlie/.ssh/id_rsa.pub') }}"

Dépendances

Aucune.

Exemple de Playbook

---
- hosts: servers
  roles:
  - { role: GROG.authorized-key, become: yes }

Dans group_vars/servers.yml :

authorized_key_list_group:
  - name: user
    authorized_keys:
      - key: "{{ lookup('file', '/home/charlie/.ssh/id_rsa.pub') }}"
      - key: "{{ lookup('file', '/home/john/.ssh/id_rsa.pub') }}"

Contributions

Toute aide, changement ou idée bienvenue !

Auteur

Par G. Roggemans

Licence

MIT

À propos du projet

A role for managing authorized keys.

Installer
ansible-galaxy install GROG.authorized-key
Licence
mit
Téléchargements
258.9k
Propriétaire
Open Source Science and Technology