guidugli.user

Rôle Ansible : Utilisateur

Un rôle Ansible qui définit les connexions, les politiques d'utilisateur et effectue également des vérifications de sécurité liées aux utilisateurs et aux groupes. Systèmes cibles : RHEL/CentOS, Fedora, et Debian/Ubuntu.

Exigences

Aucune exigence supplémentaire.

Variables de rôle

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

user_skip_config: false

Si défini sur true, il ignorera toute configuration utilisateur et effectuera seulement l'ajout/enlèvement d'utilisateurs et de groupes.

user_new_password: "{{ vault_admin_password }}"

Si le mot de passe de l'utilisateur exécutant Ansible change, cette variable doit avoir le nouveau mot de passe, afin que ansible_become_pass et ansible_ssh_pass puissent être mis à jour. Il est recommandé de stocker le mot de passe dans un autre fichier et de le chiffrer avec vault.

user_configure_single_user: no

Indique si le mode utilisateur unique doit être configuré (le mot de passe root doit être défini).

user_max_days: 365

Nombre de jours avant l'expiration du mot de passe.

user_min_days: 7

Nombre de jours avant qu'un utilisateur soit autorisé à changer de mot de passe.

user_inactive_days: 30

Nombre de jours avant qu'un utilisateur soit considéré comme inactif.

user_warn_age: 7

Nombre de jours avant l'expiration du mot de passe qui générera un avertissement à l'utilisateur.

user_umask: '027'

UMASK à utiliser par tous les utilisateurs.

user_shell_timeout: 900

Temps d'attente du shell en secondes.

user_fix_existing_accounts: yes

S'il est défini sur true/yes, il effectuera des vérifications de sécurité sur les utilisateurs et les groupes.

root_password: ''

Définit le mot de passe root.

user_account_add: []
  #- name: exemple
  #  comment: Ceci est un exemple
  #  uid: 1076
  #  groups: ['admin']
  #  shell: /bin/bash
  #  password: encpwd

Ajouter/Modifier les comptes spécifiés. La valeur par défaut est une liste vide. Les lignes ci-dessus qui sont commentées montrent un exemple de comment spécifier une entrée. Toutes les options de ansible.builtin.user sont disponibles, en plus d'une nouvelle option "linger", qui active/désactive la persistance de l'utilisateur (voir la commande loginctl pour plus d'informations sur la persistance de l'utilisateur). Si linger n'est pas spécifié, la persistance ne sera pas modifiée. Si défini sur false, la persistance sera désactivée. Si défini sur true, la persistance sera activée. NOTE : la persistance ne fonctionnera pas sur les conteneurs car elle nécessite systemd et dbus.

user_account_remove: []
  #- acc_a_retirer

Liste des noms d'utilisateur à retirer du système.

user_group_add: []
#  - name: admin
#    gid: 760

Ajouter les groupes spécifiés au système. La valeur par défaut est une liste vide. Les lignes ci-dessus qui sont commentées montrent un exemple de comment spécifier une entrée. Le seul paramètre obligatoire pour chaque entrée de groupe est le champ du nom (nom de groupe).

user_group_remove: []
#  - mon_groupe

Retirer les groupes spécifiés du système.

user_alias: []
#  - user: exemple
#    alias: ll
#    command: ls -l --color=auto
#    state: present

Spécifier des alias à créer/retirer du fichier bashrc de l'utilisateur. La commande n'est pas requise lorsque l'état est absent. La valeur par défaut est une liste vide. Les lignes ci-dessus qui sont commentées montrent un exemple de comment spécifier une entrée.

Dépendances

Aucune dépendance.

Exemple de Playbook

- hosts: serveurs
  vars:
    user_max_days: 365
    user_min_days: 7
    user_inactive_days: 30
    user_warn_age: 7
    user_umask: '027'
    user_shell_timeout: 900
    user_fix_existing_accounts: yes
    root_password: monmotdepasse
    user_account_add:
      - name: exemple
        comment: Ceci est un exemple
        uid: 1076
        groups: ['admin']
        shell: /bin/bash
        password: encpwd
        linger: false
    user_account_remove:
      - retirermoi
    user_group_add:
      - name: admin
        gid: 760
    user_group_remove:
      - mon_groupe
    user_alias:
      - user: exemple
        alias: monls
        command: ls -l --color=auto
        state: present

  roles:
     - { role: guidugli.user }

Licence

MIT / BSD

Informations sur l'auteur

Ce rôle a été créé en 2020 par Carlos Guidugli.

À propos du projet

Add/Remove users; define and check security settings

Installer
ansible-galaxy install guidugli.user
Licence
mit
Téléchargements
142
Propriétaire