users

Пользователи

Эта роль настраивает учетные записи пользователей для клиентов и Adfinis.

Требования

Эта роль предполагает наличие первоначального пользователя не-root с правами sudo на системе ({{users_default_user}}, см. Переменные роли ниже).

Этот пользователь используется для первоначальной настройки учетных записей и затем удаляется. Удаление происходит на последнем этапе выполнения этой роли (поэтому первый запуск пройдет успешно, но при повторном входе будет ошибка).

В плейбуке (или серии плейбуков) рекомендуется применять эту роль в двух вариантах:

  1. В первый раз, применить с remote_user: {{users_default_user}}.

  2. Позже, применить с нужным пользователем (либо личная учетная запись, либо root, если это разрешено).

Рекомендуется сохранить плейбук/игру для первоначальной настройки и плейбук/игру для постоянного управления.

Зависимости роли

(нет)

Переменные роли

Обязательные

  • users_root_password_salt (строка, по умолчанию: не задано):
    Соль, используемая для хеширования пароля root.
    Примечание: Требуется только в том случае, если users_root_password установлен и users_root_password_is_hashed равен false.

  • users_customer_group (строка):
    Название системной группы, в которую добавляются все учетные записи пользователей клиентов.
    Примечание: Требуется только в том случае, если users_customer не пустой.

Необязательные

  • users_root_password (строка, по умолчанию: не задано):
    Если это значение не установлено, пароль root не изменяется.
    Если это значение установлено и users_root_password_is_hashed равно false, это пароль в открытом виде, и users_root_password_salt также должен быть задан.
    Если это установлено, и users_root_password_is_hashed равно true, это предполагается как хешированный пароль (как указано в ansible.builtin.password_hash).

  • users_root_password_is_hashed (логическое, по умолчанию: false):
    Если установлено в true, users_root_password предполагается как уже захешированный (в этом случае users_root_password_salt не требуется).

  • users_root_authorized_keys (список, по умолчанию: []):
    SSH публичные ключи, которым будет разрешен вход как root.
    Каждый элемент списка — это объект со следующими свойствами:

    • key (строка, обязательно):
      Данные ключа.
    • comment (строка, необязательная, по умолчанию: не задано):
      Комментарий, добавленный к строке ключа (обычно user@host).
    • description (строка, необязательная, по умолчанию: не задано):
      Описание для человека, помещенное в качестве комментария в файл authorized_keys над строкой ключа.
    • options (строка, необязательная, по умолчанию: не задано):
      Строка опций ключа, добавляемая перед строкой ключа.
  • users_adfinis (список, по умолчанию: []):
    Учетные записи пользователей Adfinis, которые нужно настроить. Каждый пользователь будет добавлен в системную группу {{users_adfinis_group}}. В свою очередь, каждый существующий не системный пользователь в этой группе, который не указан в этой переменной, будет удален.
    Каждый элемент списка — это объект со следующими свойствами:

    • username (строка, обязательно):
      Имя учетной записи пользователя.
    • authorized_keys (список, по умолчанию: []):
      SSH публичные ключи, которым будет разрешен вход как root.
      Каждый элемент списка является объектом со свойствами, описанными в users_root_authorized_keys.
  • users_adfinis_group (строка, по умолчанию: adfinis):
    Имя системной группы, в которую добавляются все учетные записи пользователей Adfinis.

  • users_adfinis_ssh_pubkey_options (строка, по умолчанию: не задано):
    Строка опций ключа, добавляемая перед всеми строками ключей.

  • users_adfinis_homedir_mode (режим файловых разрешений, по умолчанию: 0700):
    Режим файловых разрешений для домашнего каталога каждого пользователя Adfinis.
    Примечание: Из-за исторической проблемы с Jinja2 восьмеричное представление режима должно либо передаваться как строка (чтобы избежать неправильной трансформации), либо опция Ansible должна быть установлена в true.

  • users_adfinis_unrestricted_sudo (логическое, по умолчанию: true):
    Устанавливается ли пользователям Adfinis неограниченные права sudo.

  • users_adfinis_user_remove_home (логическое, по умолчанию: false):
    Следует ли удалять домашний каталог также, когда удаляется не указанный пользователь Adfinis.

  • users_customer (список, по умолчанию: []):
    Учетные записи пользователей клиентов, которые нужно настроить. Каждый пользователь будет добавлен в системную группу {{users_customer_group}}.
    Каждый элемент списка является объектом со свойствами, описанными в users_adfinis.

  • users_customer_homedir_mode (режим файловых разрешений, по умолчанию: 0755):
    Режим файловых разрешений для домашнего каталога каждого пользователя клиента.
    По умолчанию он будет доступен для чтения всем, чтобы клиенты могли использовать sudo -u для выполнения команд от имени других пользователей и по-прежнему передавать файлы в своем домашнем каталоге.
    Примечание: Из-за исторической проблемы с Jinja2 восьмеричное представление режима должно либо передаваться как строка (чтобы избежать неправильной трансформации), либо опция Ansible должна быть установлена в true.

  • users_customer_unrestricted_sudo (логическое, по умолчанию: false):
    Устанавливаются ли пользователям клиентов неограниченные права sudo.

  • users_default_user (строка, по умолчанию: adfinis):
    Имя первоначально существующей учетной записи пользователя не-root на системе, которая будет удалена.

  • users_default_user_remove_home (логическое, по умолчанию: false):
    Следует ли удалять также домашний каталог первоначально существующей учетной записи пользователя не-root.

Теги роли

  • init: То же, что и role::users:root и role::users:adfinis в комбинации.
  • role::users: Все задачи в этой роли.
  • role::users:root: Все задачи, которые настраивают учетную запись пользователя root.
  • role::users:adfinis: Все задачи, которые настраивают учетные записи пользователей Adfinis.
  • role::users:adfinis:create: Все задачи, которые настраивают учетные записи пользователей Adfinis (без удаления).
  • role::users:adfinis:delete: Все задачи, которые удаляют лишние учетные записи пользователей Adfinis.
  • role::users:customer: Все задачи, которые настраивают учетные записи пользователей клиентов.
  • role::users:default: Все задачи, которые очищают учетную запись пользователя по умолчанию.

Политика поддержки

Поддерживается и обслуживается только последняя версия (см. Страницу тегов).

Как только выпускается новая версия, предыдущая ветка версии больше не получает исправлений ошибок.

О проекте

Create and remove posix users and groups, add or remove ssh keys

Установить
ansible-galaxy install adfinis-sygroup/ansible-role-users
Лицензия
Unknown
Загрузки
3318
Владелец
Adfinis SyGroup was rebranded to Adfinis, follow the link below: