Ответ
Active Directory (AD) — это реализация Microsoft службы каталогов на базе LDAP и Kerberos, используемая для централизованного управления идентификацией, аутентификацией и авторизацией (IAM) пользователей, компьютеров и других ресурсов в доменной сети Windows. В современных гетерогенных средах (Windows + Linux) и DevOps-практиках AD выступает как единый источник истины (source of truth) для учётных записей.
Интеграция AD в Linux-инфраструктуру и DevOps:
-
Аутентификация Linux-серверов: Серверы под управлением Linux (например, с Ubuntu/RHEL) присоединяются к домену AD с помощью SSSD (System Security Services Daemon) или realmd. Это позволяет инженерам входить на серверы с помощью своих корпоративных учетных записей AD.
# Пример присоединения RHEL/CentOS к домену с помощью realmd sudo yum install realmd sssd oddjob oddjob-mkhomedir adcli samba-common-tools sudo realm discover example.com sudo realm join --user=admin_user example.com -
Авторизация и контроль доступа: Группы безопасности AD (Security Groups) используются для управления доступом к ресурсам (например, через
sudoна Linux или политики доступа в Kubernetes).# /etc/sudoers.d/ad_admins - Предоставление прав sudo группе AD "Linux-Admins" %EXAMPLELinux-Admins ALL=(ALL) NOPASSWD:ALL -
Интеграция с инструментами DevOps:
- Kubernetes: Использование Dex или Active Directory Federation Services (AD FS) с OIDC для аутентификации пользователей в кластере. Плагин
kubeloginдляkubectl. - CI/CD (Jenkins, GitLab): Настройка аутентификации через LDAP/AD plugin. Группы AD определяют права на запуск пайплайнов.
- Мониторинг (Grafana, Prometheus Alertmanager): Настройка Single Sign-On (SSO) через OAuth2 Proxy или SAML с AD в качестве identity provider.
- Базы данных (PostgreSQL): Использование
pamилиldapаутентификации для пользователей AD.
- Kubernetes: Использование Dex или Active Directory Federation Services (AD FS) с OIDC для аутентификации пользователей в кластере. Плагин
-
Инфраструктура как код (IaC): Управление объектами AD (пользователи, группы, OU) через код с использованием PowerShell DSC, Terraform с провайдером
ActiveDirectory(через WinRM) или Ansible модулейwin_domain,win_domain_membership.# Ansible playbook для присоединения Windows-хоста к домену - name: Join Windows server to AD domain win_domain_membership: dns_domain_name: "example.com" domain_admin_user: "join_user@example.com" domain_admin_password: "{{ vault_domain_join_password }}" state: domain
Безопасность и аудит: Интеграция с AD обеспечивает централизованный аудит событий входа, применение политик паролей (GPO) и мгновенное отзыв доступа при увольнении сотрудника для всей инфраструктуры, что является критичным требованием в DevOps для compliance.