ansible_role_ad_membership

Роль Ansible для членства в AD

Управление членством управляемого хоста в Windows AD.

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

Лицензия

MIT / BSD

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

Требования

  • Убедитесь, что менеджер пакетов доступен и настроен с правильными источниками и репозиториями пакетов.
  • Убедитесь, что у пользователя, выполняющего эту роль, есть привилегированные разрешения для:
    • Установки и удаления.
    • Редактирования файлов, таких как /etc/krb5.conf и /etc/sssd/sssd.conf.
    • Управления службами systemd для realmd, sssd и addjobd.
  • Убедитесь, что есть сеть с контроллером домена Windows.

Зависимости

Нет.

Совместимость

Совместим со следующим списком операционных систем:

  • CentOS 7
  • CentOS 8
  • RHEL 7.x
  • RHEL 8.x

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

Имя переменной Описание
role_ad_membership_sa_username Имя пользователя сервисной учетной записи для AD (зашифровано).
role_ad_membership_sa_password Пароль сервисной учетной записи для AD (зашифрован).
role_ad_membership_required_packages Список необходимых пакетов для установки.
role_ad_membership_use_discovered_domain_controller Использовать ли обнаруженный контроллер AD на основе домена.
role_ad_membership_ad_controller_random_selection Определять ли случайный контроллер AD или просто первый в списке.
role_ad_membership_ad_controllers Список контроллеров AD.
role_ad_membership_computer_ou Организационная единица AD, в которую будет помещен объект компьютера.
role_ad_membership_ou_user_search_base Организационная единица AD для поиска пользователей.
role_ad_membership_netbios_max_length Максимальная длина строки для проверки имени хоста Netbios.
role_ad_membership_leave_ad Уйти ли из AD и удалить объект компьютера из OU.
role_ad_membership_allowed_group_list Объединенный список других списков, которые начинаются с названия role_ad_membership_allowed_group_list_.
role_ad_membership_allowed_group_list_default По умолчанию разрешенный список групп.
role_ad_membership_molecule_dummy Фиктивный переключатель, чтобы обойти весь плейбук конвертации.

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

---
- name: Управление членством управляемого хоста в Windows AD
  become: True
  gather_facts: True
  vars_files:
    - /path/to/vault/file.yml
  tasks:
    - import_role:
        name: ansible_role_ad_membership
      vars:
        role_ad_membership_required_packages:
          - openldap-clients
          - krb5-workstation
          - krb5-libs
          - adcli
          - realmd
          - authconfig
          - samba-client
          - samba-common
          - samba-common-tools
          - sssd
          - sssd-ad
          - sssd-krb5
          - oddjob
          - oddjob-mkhomedir
        role_ad_membership_use_global_domain_controller: False
        role_ad_membership_ad_controller_random_selection: False
        role_ad_membership_ad_controllers:
          - ad1.example.com
          - ad2.example.com
        role_ad_membership_computer_ou: OU=Servers,DC=example,DC=com
        role_ad_membership_netbios_max_length: 15
        role_ad_membership_leave_ad: False
        role_ad_membership_allowed_group_list_default:
          - Special-Group-01
          - super_special_group_01
        role_ad_membership_allowed_group_list_something:
          - Special-Group-02
          - super_special_group_02
        role_ad_membership_allowed_group_list_something_else:
          - Special-Group-03
          - super_special_group_03

...

Полезные команды оболочки

Обнаружение контроллера AD и специфики домена.

dig -t SRV _ldap._tcp.ad.example.com
dig -t SRV _ldap._tcp.dc._msdcs.ad.example.com

Дополнительные ресурсы документации

Следующие ссылки предоставляют дополнительную информацию о sssd и его использовании.

Тестирование с Molecule

Эта роль тестируется локально с использованием Molecule, конфигурация находится в: molecule/default.
Тесты Molecule запускаются (с использованием docker driver) на Dockerhub images, построенных для этой цели:

Некоторые конкретные конфигурации могут потребовать полную ОС вместо минимального изображения контейнера. В этих случаях используйте molecule driver for vagrant с libvirt provider. Часть конфигурации драйвера Molecule и платформы может выглядеть примерно так:

driver:
  name: vagrant
  provider:
    name: libvirt
platforms:
  - name: ansible_role_ad_membership-ansible-molecule-centos-7
    box: centos/7
    imemory: 1024
    cpus: 1

CI/CD с Travis CI

Эта роль использует Travis CI для выполнения онлайн-тестов с использованием Molecule и отправки уведомлений для импорта роли в Ansible Galaxy, как только тесты успешно пройдены. Конфигурация Travis CI находится в корне роли Ansible .travis.yml

Полезные ссылки

Установить
ansible-galaxy install Caseraw/ansible_role_ad_membership
Лицензия
Unknown
Загрузки
381
Владелец
DevOps | RHCA | Red Hat Accelerator