user
Пользователь
Роль для управления пользователями.
Следующие роли были разработаны для совместной работы с этой ролью:
- authorized-key — для управления авторизованными ключами.
- sudo — для управления правами sudo.
Роль management-user объединяет все эти роли в одну простую в использовании роль.
Требования
- Хосты должны быть подготовлены для использования ansible (должен быть установлен python, и т.д.)
- Привилегии root, например,
become: yes
- На хосте должны быть доступны
useradd
,userdel
иusermod
Переменные роли
Переменная | Описание | Значение по умолчанию |
---|---|---|
user_list |
Список пользователей (см. детали!) | [] |
user_list_host |
Список пользователей (см. детали!) | [] |
user_list_group |
Список пользователей (см. детали!) | [] |
user_append |
Значение по умолчанию для append |
no |
user_createhome |
Значение по умолчанию для createhome |
yes |
user_force |
Значение по умолчанию для force |
no |
user_generate_ssh_key |
Значение по умолчанию для generate_ssh_key |
no |
user_move_home |
Значение по умолчанию для move_home |
no |
user_none_unique |
Значение по умолчанию для none_unique |
no |
user_remove |
Значение по умолчанию для remove |
no |
user_shell |
Значение по умолчанию для shell |
'/bin/sh' |
user_ssh_key_bits |
Значение по умолчанию для ssh_key_bits |
4096 |
user_ssh_key_file |
Значение по умолчанию для ssh_key_file |
'.ssh/id_rsa' |
user_system |
Значение по умолчанию для system |
no |
user_update_password |
Значение по умолчанию для update_password |
always |
Детали user_list
user_list
, user_list_host
и user_list_group
объединяются при управлении пользователями. Вы можете использовать списки хостов и групп, чтобы указать пользователей для каждого хоста или группы хостов.
Список пользователей позволяет вам определить, какие пользователи должны управляться. Каждый элемент в списке может иметь следующие атрибуты:
Переменная | Описание | Обязательная | По умолчанию |
---|---|---|---|
append |
Только добавлять в группы? | no | user_append |
comment |
Описание пользователя (также GECOS) | no | / |
createhome |
Создать домашнюю директорию? | no | user_createhome |
expires |
Дата истечения | no | / |
force |
Использовать опцию --force при удалении пользователя | no | user_force |
generate_ssh_key |
Генерировать ssh ключ? | no | user_generate_ssh_key |
group |
Основная группа пользователя | no | / |
groups |
Список групп для пользователя | no | / |
home |
Домашняя директория для пользователя | no | / |
login_class |
Класс входа для систем BSD | no | / |
move_home |
Переместить домашнюю директорию | no | user_move_home |
name |
Имя пользователя | yes | / |
non_unique |
Разрешить не уникальный uid | no | user_none_unique |
password |
Пароль для пользователя | no | / |
remove |
Использовать опцию --remove при удалении пользователя | no | user_remove |
shell |
Оболочка пользователя | no | user_shell |
ssh_key_bits |
Размер SSH ключа | no | user_ssh_key_bits |
ssh_key_comment |
Комментарий к SSH ключу | no | / |
ssh_key_file |
Файл SSH ключа | no | user_ssh_key_file |
ssh_key_passphrase |
Пароль-фраза для SSH ключа | no | / |
ssh_key_type |
Тип SSH ключа | no | rsa |
state |
Состояние пользователя | no | 'present' |
system |
Системная учетная запись? | no | user_system |
uid |
Идентификатор пользователя | no | / |
update_password |
Обновить пароль, если изменен? | no | user_update_password |
Пример user_list
user_list:
- name: user1
- name: user2
uid: 1001
groups:
- test
- sudo
- name: user3
uid: 1002
state: absent
Зависимости
Отсутствуют.
Пример Playbook
---
- hosts: servers
roles:
- { role: GROG.user, become: yes }
Внутри group_vars/servers.yml
:
user_list_group:
- name: user
uid: 1001
- name: test
state: absent
Участие
Вся помощь, изменения или идеи приветствуются!
Автор
Автор G. Roggemans
Лицензия
MIT
Установить
ansible-galaxy install GROG/ansible-role-user
Лицензия
mit
Загрузки
232524
Владелец
Open Source Science and Technology