ansible_users

Статус сборки

ansible-users

Роль для управления пользователями в системе.

Это форк singleplatform-eng.users, так как он, похоже, больше не поддерживается.

Конфигурация роли

  • users_create_per_user_group (по умолчанию: true) - при создании пользователей также создается группа с тем же именем, и эта группа становится основной для пользователя.
  • users_group (по умолчанию: users) - если users_create_per_user_group не установлен, то это основная группа для всех созданных пользователей.
  • users_default_shell (по умолчанию: /bin/bash) - оболочка по умолчанию, если для пользователя не указана другая.
  • users_create_homedirs (по умолчанию: true) - создавать домашние каталоги для новых пользователей. Установите это значение в false, если вы управляете домашними каталогами отдельно.
  • authorized_keys_file (по умолчанию: .ssh/authorized_keys) - установите это значение, если ssh-сервер настроен на использование нестандартного файла авторизованных ключей.

Создание пользователей

Добавьте переменную users, содержащую список пользователей для добавления. Хорошим местом для этого является group_vars/all или group_vars/groupname, если вы хотите, чтобы пользователи были только на определенных машинах.

Следующие атрибуты обязательны для каждого пользователя:

  • username - Имя пользователя.
  • name - Полное имя пользователя (поле gecos).
  • home - Домашний каталог пользователя, который нужно создать (по желанию, по умолчанию /home/username).
  • uid - Числовой идентификатор пользователя (по желанию). Это необходимо для согласованности uid по всей системе.
  • gid - Числовой идентификатор группы (по желанию). В противном случае будет использован uid.
  • password - Если предоставлен хэш, то он будет использоваться, в противном случае аккаунт будет заблокирован.
  • update_password - Это может быть 'всегда' или 'при создании'
    • 'всегда' будет обновлять пароли, если они отличаются. (по умолчанию)
    • 'при создании' устанавливает пароль только для новых пользователей.
  • group - Необязательное переопределение основной группы.
  • groups - Список дополнительных групп для пользователя.
  • append - Если да, то будут добавлены только группы, а не установлены в список groups (по желанию).
  • profile - Строковый блок для настройки пользовательских профилей оболочки.
  • ssh_key - Это должен быть список SSH ключей для пользователя (по желанию). Каждый SSH ключ должен быть указан непосредственно и не содержать переносов строк.
  • generate_ssh_key - Генерировать ли SSH ключ для пользователя (по желанию, по умолчанию - нет).

Кроме того, следующие элементы являются необязательными для каждого пользователя:

  • shell - Оболочка пользователя. По умолчанию это /bin/bash. Значение по умолчанию можно настроить с помощью переменной users_default_shell, если вы хотите, чтобы все пользователи имели одинаковую оболочку, но она отличается от /bin/bash.

Пример:

---
users:
  - username: foo
    name: Foo Barrington
    groups: ['wheel','systemd-journal']
    uid: 1001
    home: /local/home/foo
    profile: |
      alias ll='ls -lah'
    ssh_key:
      - "ssh-rsa AAAAA.... foo@machine"
      - "ssh-rsa AAAAB.... foo2@machine"
groups_to_create:
  - name: developers
    gid: 10000
users_deleted:
  - username: bar
    name: Bar User
    uid: 1002

Удаление пользователей

Переменная users_deleted содержит список пользователей, которые больше не должны находиться в системе, и они будут удалены при следующем запуске ansible. Формат такой же, как для добавляемых пользователей, но единственное обязательное поле — это username. Однако рекомендуется также сохранять поле uid для справки, чтобы числовые идентификаторы пользователей не были случайно повторно использованы.

Вы также можете выбрать опциональное удаление домашнего каталога пользователя и почтового хранилища с помощью параметра remove, и принудительное удаление файлов с помощью параметра force.

users_deleted:
  - username: bar
    uid: 1002
    remove: yes
    force: yes
О проекте

User creation role

Установить
ansible-galaxy install chasinglogic/ansible-users
Лицензия
mit
Загрузки
193
Владелец
Linux and FOSS Enthusiast.