webofmars.users

Estado de Construcción

ansible-users

Rol para gestionar usuarios en un sistema.

Configuración del rol

  • users_create_per_user_group (predeterminado: true) - al crear usuarios, también se crea un grupo con el mismo nombre de usuario y se convierte en el grupo principal del usuario.
  • users_group (predeterminado: users) - si users_create_per_user_group no está habilitado, este será el grupo principal para todos los usuarios creados.
  • users_default_shell (predeterminado: /bin/bash) - la shell predeterminada si no se especifica ninguna para el usuario.
  • users_create_homedirs (predeterminado: true) - crear directorios personales para los nuevos usuarios. Establezca esto en falso si gestiona directorios personales por separado.

Creación de usuarios

Agregue una variable de usuarios que contenga la lista de usuarios a agregar. Un buen lugar para poner esto es en group_vars/all o group_vars/nombre_de_grupo si solo desea que los usuarios estén en ciertas máquinas.

Los siguientes atributos son requeridos para cada usuario:

  • username - El nombre de usuario del usuario.
  • name - El nombre completo del usuario (campo gecos).
  • home - el directorio personal del usuario a crear (opcional, predeterminado a /home/username).
  • uid - El id numérico del usuario. Esto es necesario para mantener la consistencia del uid en los sistemas.
  • gid - El id numérico del grupo (opcional). De lo contrario, se usará el uid.
  • password - Si se proporciona un hash, se usará ese, de lo contrario la cuenta estará bloqueada.
  • update_password - Puede ser 'always' o 'on_create'
    • 'always' actualizará las contraseñas si son diferentes. (predeterminado).
    • 'on_create' solo establecerá la contraseña para los usuarios recién creados.
  • group - anulación opcional del grupo principal.
  • groups - una lista de grupos suplementarios para el usuario.
  • profile - un bloque de cadena para establecer perfiles de shell personalizados.
  • ssh_authorized_keys - Esto debe ser una lista de claves ssh para el usuario. Cada clave ssh debe incluirse directamente y no debe tener saltos de línea.

Además, los siguientes elementos son opcionales para cada usuario:

  • generate_ssh_key - Si se debe generar una clave SSH para el usuario (opcional, predeterminado en no).

  • ssh_priv_key - clave privada ssh del usuario (formato RSA).

  • shell - La shell del usuario. Esto predetermina en /bin/bash. El valor predeterminado se puede configurar usando la variable users_default_shell si desea darle a todos los usuarios la misma shell, pero es diferente de /bin/bash.

Ejemplo:

---
users:
  - username: foo
    name: Foo Barrington
    groups: ['wheel','systemd-journal']
    uid: 1001
    home: /local/home/foo
    profile: |
      alias ll='ls -lah'
    ssh_authorized_keys:
      - "ssh-rsa AAAAA.... foo@machine"
      - "ssh-rsa AAAAB.... foo2@machine"
    ssh_priv_key: |
      -----BEGIN RSA PRIVATE KEY-----
      Contenido de la clave <...>
      -----END RSA PRIVATE KEY-----
groups_to_create:
  - name: developers
    gid: 10000
users_deleted:
  - username: bar
    name: Bar User
    uid: 1002

Eliminación de usuarios

La variable users_deleted contiene una lista de usuarios que ya no deben estar en el sistema, y estos se eliminarán en la próxima ejecución de ansible. El formato es el mismo que para los usuarios a agregar, pero el único campo requerido es username. Sin embargo, se recomienda que también mantenga el campo uid como referencia para que los ids de usuario numéricos no se reutilicen accidentalmente.

Acerca del proyecto

provision users and groups on linux servers

Instalar
ansible-galaxy install webofmars.users
Licencia
mit
Descargas
298
Propietario
webofmars is a devops & IT company based in Marseille, France