socketwench.users-and-groups

Rôle Ansible : Utilisateurs et Groupes

Crée des utilisateurs et des groupes pour Linux Debian/Ubuntu.

Exigences

Aucune.

Variables de Rôle

Les variables disponibles sont listées ci-dessous, avec des valeurs par défaut (voir defaults/main.yml).

Pour créer un utilisateur avec tous les défauts, et dont le groupe principal est le même que son nom d'utilisateur :

server_users:
  - name: "ash"
    password: "imnotarobot"

Groupes

Il n'y a pas de variable de groupes séparée. Ils font plutôt partie de la variable server_users.

Pour spécifier le nom du groupe principal et des groupes alternatifs :

server_users:
  - name: "ash"
    password: "imnotarobot"
    group: "nomdugroupemprincipal"
    groups:
      - "autregroupe"
      - "plus-groupes-ici"

Clés SSH

Par défaut, tous les utilisateurs créés par ce rôle reçoivent une nouvelle clé SSH :

server_users_ssh_key_generate: yes
server_users_ssh_key_bits: "4096"

Vous pouvez également surcharger cela par utilisateur :

server_users:
  - name: "ash"
    password: "imnotarobot"
    ssh_key_generate: yes
    ssh_key_bits: "4096"

Clés autorisées SSH

Parfois, vous souhaitez également définir les clés autorisées afin que les gens puissent se connecter en utilisant des clés publiques au lieu de mots de passe. Pour le définir pour tous les utilisateurs :

server_users_auth_keys: "{{ contents_of_ssh_authorized_keys }}"

Où le contenu de la variable est le même que celui des fichiers ~/.ssh/authorized_keys.

Vous pouvez également surcharger cela par utilisateur :

server_users:
  - name: "ash"
    password: "imnotarobot"
    auth_keys: "{{ contents_of_ssh_authorized_keys }}"

Shell par défaut

Le shell par défaut est bash. Vous pouvez le surcharger pour tous les utilisateurs :

server_users_shell: "/bin/bash"

Vous pouvez également spécifier un shell pour un utilisateur particulier. Cela annule la valeur par défaut :

server_users:
  - name: "ash"
    password: "imnotarobot"
    shell: "/bin/zsh"

Par défaut, le rôle ne consigne pas les actions des tâches pour des raisons de sécurité. Pour activer la journalisation :

server_users_no_log: true

Configurations Ansible

Ce rôle distribue également un fichier .ansible.cfg dans le répertoire personnel de chaque utilisateur. Cela vous permet de modifier le chemin par défaut des rôles et les paramètres no_cows :

server_users_ansible_role_path:  "~/.ansible/roles"
server_users_ansible_nocows: 1
server_users_ansible_log: false
server_users_ansible_log_path: '~/ansible.log'

Encore une fois, vous pouvez faire cela par utilisateur :

server_users:
  - name: "ash"
    password: "imnotarobot"
    ansible_role_path: "/etc/ansible/roles"
    ansible_nocows: 0
    ansible_log: true
    ansible_log_path: "/home/ash/logs/ansible.log"

Suppression et suppression d'utilisateurs

Vous pouvez également supprimer des utilisateurs en utilisant la variable state :

server_users:
  - name: "ash"
    state: absent

Si vous souhaitez également supprimer leur répertoire personnel, utilisez remove :

server_users:
  - name: "ash"
    state: absent
    remove: yes

Dépendances

Aucune.

Exemple de Playbook

server_users:
  - name: "ash"
    password: "imnotarobot"
    group: "wy"
    groups:
      - "scidiv"
  - name: "kane"
    password: "ihateeggs"
    shell: "/bin/ksh"
    ssh_key_generate: no

Licence

GPL 3.0.

Informations sur l'Auteur

Ce rôle a été créé en 2017 par socketwench.

À propos du projet

Creates users and groups for Linux

Installer
ansible-galaxy install socketwench.users-and-groups
Licence
gpl-3.0
Téléchargements
334
Propriétaire