claranet.users
Rôle Ansible - utilisateurs
:star: Donnez-nous une étoile sur GitHub — cela nous motive beaucoup !
Créer des groupes, des utilisateurs et configurer les fichiers de configuration des utilisateurs.
:warning: Exigences
Ansible >= 2.10
:zap: Installation
ansible-galaxy install claranet.users
:gear: Variables du rôle
Utilisateurs
Les attributs pris en charge pour les utilisateurs sont name
, append
, shell
, createhome
, home
, password
, uid
, group
, groups
, update_password
, state
, remove
et comment
.
Plus d'informations
Variable | Valeur par défaut | Description |
---|---|---|
users | {} | Créer des groupes, des utilisateurs et activer les fichiers bashrc, ssh/config, vimrc et profile |
Veuillez noter que nous devons définir chattr -a sur le fichier .bash_history pour gérer les modifications de groupes !
Paquets
Variable | Valeur par défaut | Description |
---|---|---|
users_packages | ["bash","bash-completion","vim","e2fsprogs"] | Liste des paquets requis pour les utilisateurs |
Variables globales
Variable | Valeur par défaut | Description |
---|---|---|
users_umask | 022 | Valeur par défaut du umask pour les fichiers créés par les utilisateurs |
users_lang | POSIX | Variable de langue par défaut |
users_editor | vim | Éditeur par défaut est vim |
users_ls_options | --color=auto | Options ls par défaut |
Fichiers de configuration
Variable | Valeur par défaut | Description |
---|---|---|
users_default_bashrc | defaults/main.yml | Gérer le contenu du fichier .bashrc |
users_default_vimrc | defaults/main.yml | Gérer le contenu du fichier .vimrc |
users_default_profile | defaults/main.yml | Gérer le contenu du fichier .profile |
users_bashrc_histcontrol | ignoreboth | Définir la variable HISTCONTROL |
users_bashrc_histsize | 5000 | Définir la variable HISTSIZE |
users_bashrc_histfilesize | 20000 | Définir la variable HISTFILESIZE |
users_bashrc_histtimeformat | %d-%m-%y %T | Définir la variable HISTTIMEFORMAT |
users_bashrc_template | users/bashrc.j2 | Configure ~/.bashrc |
users_ssh_config_template | users/ssh_config.j2 | Configure ~/.ssh/config |
users_vimrc_template | users/vimrc.j2 | Configure ~/.vimrc |
users_profile_template | users/profile.j2 | Configure ~/.profile |
Les fichiers de configuration (bashrc, ssh/config, vimrc, profile) ne sont pas activés par défaut. Vous devez les définir explicitement pour l'utilisateur souhaité. (Voir l'exemple ci-dessous).
:arrows_counterclockwise: Dépendances
Voir tasks/install.yml.
:pencil2: Exemple de Playbook
---
- hosts: all
become: true
become_user: root
roles:
- claranet.users
vars:
users:
root:
home: /root
group: wheel
password: "*"
authorized_keys: ["ssh-rsa xxx"]
bashrc:
- 'export PS1=''\[\033[01;31m\]\u\[\033[00m\]@$(hostname -f) \[\033[01;34m\]\w \$\[\033[00m\] '''
vimrc:
- "color desert"
profile: {}
ssh_config:
'mysrv*':
identityFile: /home/user/.ssh/user
ssh_keys:
id_rsa:
public: 'ssh-rsa '
private: "{{ lookup('community.hashi_vault.hashi_vault', 'secret/ssh:private_key') }}"
update_password: "on_create" # par défaut c'est toujours