users-and-groups

Ansible Роль: Пользователи и Группы

Создает пользователей и группы для Debian/Ubuntu Linux.

Требования

Нет.

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

Доступные переменные приведены ниже, вместе с значениями по умолчанию (см. defaults/main.yml).

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

server_users:
  - name: "ash"
    password: "imnotarobot"

Группы

Отдельной переменной для групп нет. Они являются частью переменной server_users.

Чтобы указать имя основной группы и дополнительные группы:

server_users:
  - name: "ash"
    password: "imnotarobot"
    group: "primarygroupname"
    groups:
      - "anothergroup"
      - "more-groups-here"

SSH Ключи

По умолчанию, всем пользователям, созданным этой ролью, генерируется новый SSH-ключ:

server_users_ssh_key_generate: yes
server_users_ssh_key_bits: "4096"

Вы также можете переопределить это для каждого пользователя:

server_users:
  - name: "ash"
    password: "imnotarobot"
    ssh_key_generate: yes
    ssh_key_bits: "4096"

Авторизованные SSH ключи

Иногда вы хотите установить авторизованные ключи, чтобы пользователи могли входить, используя публичные ключи вместо паролей. Чтобы установить это для всех пользователей:

server_users_auth_keys: "{{ contents_of_ssh_authorized_keys }}"

Где содержимое переменной такое же, как в файлах ~/.ssh/authorized_keys.

Вы также можете переопределить это для каждого пользователя:

server_users:
  - name: "ash"
    password: "imnotarobot"
    auth_keys: "{{ contents_of_ssh_authorized_keys }}"

Shell по умолчанию

Shell по умолчанию — это bash. Вы можете переопределить это для всех пользователей:

server_users_shell: "/bin/bash"

Также можно указать shell для конкретного пользователя. Это переопределяет значение по умолчанию:

server_users:
  - name: "ash"
    password: "imnotarobot"
    shell: "/bin/zsh"

По умолчанию роль не регистрирует действия задач по соображениям безопасности. Чтобы включить ведение журнала:

server_users_no_log: true

Настройки Ansible

Эта роль также распределяет файл .ansible.cfg в домашнюю директорию каждого пользователя. Это позволяет вам переопределить настройки role_path и no_cows по умолчанию:

server_users_ansible_role_path:  "~/.ansible/roles"
server_users_ansible_nocows: 1
server_users_ansible_log: false
server_users_ansible_log_path: '~/ansible.log'

Снова, вы можете сделать это для каждого пользователя:

server_users:
  - name: "ash"
    password: "imnotarobot"
    ansible_role_path: "/etc/ansible/roles"
    ansible_nocows: 0
    ansible_log: true
    ansible_log_path: "/home/ash/logs/ansible.log"

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

Вы также можете удалить пользователей, используя переменную state:

server_users:
  - name: "ash"
    state: absent

Если вы хотите также удалить их домашнюю директорию, используйте remove:

server_users:
  - name: "ash"
    state: absent
    remove: yes

Зависимости

Нет.

Пример Плейбука

server_users:
  - name: "ash"
    password: "imnotarobot"
    group: "wy"
    groups:
      - "scidiv"
  - name: "kane"
    password: "ihateeggs"
    shell: "/bin/ksh"
    ssh_key_generate: no

Лицензия

GPL 3.0.

Информация об Авторе

Эта роль была создана в 2017 году socketwench.

О проекте

Creates users and groups for Linux

Установить
ansible-galaxy install socketwench/ansible-role-users-and-groups
Лицензия
gpl-3.0
Загрузки
325
Владелец