ludus_adcs

Ansible Роль: ADCS (Ludus)

Ansible роль, которая устанавливает ADCS на Windows Server и, при желании, настраивает шаблоны Certified Preowned.

  • Превращает ВМ с ролью "badsectorlabs.adcs" в Центр сертификации
  • По желанию, создает шаблоны сертификатов для ESC1,2,3 и 13
  • По желанию, настраивает ATTRIBUTESUBJECTALTNAME2 на CA для ESC6
  • По желанию, включает веб-регистрацию для ESC8
  • По желанию, для ESC13 создает пользователя (esc13user), группу (esc13group), шаблон (ESC13) и политику выдачи (IssuancePolicyForESC13)

[!WARNING] Эта роль не идемпотентна! Установка значения ludus_adcs_escX на true, применение роли, затем установка на false и повторное применение роли НЕ удалит шаблон, который теперь установлен на false.

Требования

Нет.

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

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

# Это получает netbios_name из домена, назначенного этой машине в конфигурации диапазона ludus
ludus_adcs_domain: "{{ (ludus | selectattr('vm_name', 'match', inventory_hostname))[0].domain.fqdn.split('.')[0] }}"
# Это получает vm_name основного dc для домена, назначенного этой машине в конфигурации диапазона ludus
ludus_adcs_dc: "{{ (ludus | selectattr('domain', 'defined') | selectattr('domain.fqdn', 'match', ludus_adcs_domain) | selectattr('domain.role', 'match', 'primary-dc'))[0].hostname }}"
# Это получает hostname из конфигурации ludus для этого узла
ludus_adcs_ca_host: "{{ (ludus | selectattr('vm_name', 'match', inventory_hostname))[0].hostname }}"
ludus_adcs_domain_username: "{{ ludus_adcs_domain }}\\{{ defaults.ad_domain_admin }}"
ludus_adcs_domain_password: "{{ defaults.ad_domain_admin_password }}"
ludus_adcs_ca_common_name: "{{ ludus_adcs_domain }}-CA"
ludus_adcs_esc1: true
ludus_adcs_esc2: true
ludus_adcs_esc3: true
ludus_adcs_esc3_cra: true
ludus_adcs_esc4: true
ludus_adcs_esc6: true
ludus_adcs_esc8: true
ludus_adcs_esc13: true

# Переменные для конкретных ESC
ludus_adcs_esc13_user: esc13user
ludus_adcs_esc13_password: ESC13password
ludus_adcs_esc13_group: esc13group
ludus_adcs_esc13_template: ESC13

Зависимости

Нет.

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

- hosts: adcs_hosts
  roles:
    - badsectorlabs.ludus_adcs
  vars:
    ludus_adcs_domain: mydomain
    ludus_adcs_ca_host: CAHOST
    ludus_adcs_domain_username: "mydomain\\Administrator"
    ludus_adcs_domain_password: P@ssw0rd
    ludus_adcs_ca_common_name: mydomain-CA
    ludus_adcs_ca_web_enrollment: true
    ludus_adcs_esc1: true
    ludus_adcs_esc2: true
    ludus_adcs_esc3: true
    ludus_adcs_esc3_cra: true
    ludus_adcs_esc4: true
    ludus_adcs_esc6: true
    ludus_adcs_esc8: true
    ludus_adcs_esc13: true

Пример конфигурации диапазона Ludus

ludus:
  - vm_name: "{{ range_id }}-ad-dc-win2022-server-x64-1"
    hostname: "{{ range_id }}-DC01-2022"
    template: win2022-server-x64-template
    vlan: 10
    ip_last_octet: 11
    ram_gb: 6
    cpus: 4
    windows:
      sysprep: true
    domain:
      fqdn: ludus.domain
      role: primary-dc
    roles:
      - badsectorlabs.ludus_adcs
    role_vars:
      ludus_adcs_esc6: false # По умолчанию ESC1,2,3,4,6,8 и 13 включены

Лицензия

GPLv3

Некод был основан на заданиях из GOAD (также GPLv3).

Включенный проект ADCSTemplate лицензирован под MIT и написан Эшли МаКлоун.

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

Эта роль была создана в 2024 году Bad Sector Labs для Ludus.

О проекте

Add Active Directory Certificate Services to a Windows server

Установить
ansible-galaxy install badsectorlabs/ludus_adcs
Лицензия
gpl-3.0
Загрузки
305
Владелец