Skip to content

Users

Le rôle Users permet de créer les comptes utilisateurs du serveur, de les ajouter aux groupes définis dans la configuration et d’installer leurs clés publiques SSH afin d’autoriser leur connexion.

Il est responsable de :

  • création des comptes utilisateurs
  • ajout des utilisateurs aux groupes configurés
  • installation des clés publiques SSH
  • création automatique du répertoire personnel de chaque utilisateur

Les utilisateurs sont décrits dans la variable users_server_users.

Pour chaque utilisateur, le rôle :

  • crée le compte si celui-ci n’existe pas
  • l’ajoute aux groupes configurés
  • installe la clé publique SSH correspondante depuis le dossier files/
roles/users/
├── defaults/
│ └── main.yml # Variables du rôle
├── files/ # Contient les clés plublique SSH des différetns utilisateurs
│ ├── ansible.pub
│ ├── corentin.pub
│ └── fabien.pub
├── tasks/
└── main.yml # Instruction pour Ansible

Les variables sont contenues dans le fichier main.yml dans le dossier defaults.

Variable Type Description
users_server_users Liste Liste qui contient les différentes informations pour crée l’utilisateur sur le vps

Variables de la liste users_server_users

Variable Type Description
users_server_users string Nom de l’utilisateur
groups Liste Liste qui contient les différents groupes auquels l’utilisateur doit être ajouté
ssh_public_key_file string Indique le fichier qui contient la clé publique SSH de l’utilisateur
users_server_users:
- name: corentin
groups:
- sudo
ssh_public_key_file: corentin.pub
- name: fabien
groups:
- sudo
ssh_public_key_file: fabien.pub
- name: ansible
groups:
- sudo
ssh_public_key_file: ansible.pub

Le rôle réalise les opérations suivantes :

  1. Création des comptes utilisateurs.
  2. Création automatique de leur répertoire personnel.
  3. Ajout aux groupes définis dans la configuration.
  4. Installation de la clé publique SSH dans le fichier authorized_keys.
  5. Configuration de l’accès sudo sans demande de mot de passe pour les utilisateurs administrateurs.
Terminal window
id corentin
Terminal window
groups corentin
Terminal window
cat /home/corentin/.ssh/authorized_keys

Depuis un autre poste :

Terminal window
ssh corentin@serveur