Настройка LAPS
Эллес поддерживает технологию обновления паролей локальных администраторов Local Administrator Password Solution (LAPS).
Общие сведения
Технология LAPS обеспечивает автоматическое формирование уникальных сложных паролей для локальных администраторов на машинах в домене, их обновление с настраиваемой периодичностью и централизованное хранение в базе данных службы каталогов с контролем доступа.
Основные компоненты технологии:
-
расширение схемы данных каталога для хранения паролей и метаданных в специальных атрибутах объектов компьютеров;
-
инструменты администрирования — подкоманды утилиты
samba-toolдля расширения схемы, управления разрешениями и просмотра паролей; -
групповая политика для централизованной настройки параметров управления паролями (длина, сложность, периодичность смены и т. д.);
-
клиентское расширение на управляемых устройствах, отвечающее за генерацию, установку и сброс пароля локального администратора, контроль соответствия пароля требованиям безопасности, изменение имени административной учетной записи, шифрование и учет других атрибутов LAPS в соответствии с установленной групповой политикой;
-
модуль PAM (
pam_laps) для встраивания в цепочку модулей аутентификации на клиентских устройствах на ОС Linux.
Последовательность настройки управления паролями локальных администраторов включает:
-
Расширение схемы данных каталога дополнительными атрибутами класса
computer. -
Выдача разрешений на обновление и получение паролей локальных администраторов.
-
Настройка групповой политики управления паролями локальных администраторов.
-
Установка и настройка PAM-модуля на клиентских устройствах с ОС Linux.
-
Применение групповой политики на машинах в домене.
Процесс управления паролями локальных администраторов состоит из следующих шагов:
-
Клиентское расширение генерирует пароль для локального администратора.
-
Пароль сохраняется в БД Эллес в открытом или зашифрованном виде.
-
Устанавливается время истечения периода действия пароля согласно политике.
-
По истечении периода действия пароль автоматически обновляется.
-
Авторизованные администраторы могут получить доступ к паролям с помощью
samba-toolи использовать его для входа на конечные устройства.
Ограничения
В текущей версии реализация LAPS в Эллес имеет ряд ограничений.
Поддерживаемый алгоритм шифрования
В текущей версии Эллес поддерживает только публичные ключи, сгенерированные по схеме Diffie–Hellman. В результате LAPS использует только такие ключи для шифрования и дешифрования паролей.
Для проверки выбранного алгоритма в текущей конфигурации KDS на контроллере домена под управлением Windows Server может использоваться командлет PowerShell Get-KdsConfiguration.
При использовании алгоритма Diffie-Hellman командлет вернет в атрибуте SecretAgreementAlgorithm значение DH.
Например:
PS C:\Users\Administrator> Get-KdsConfiguration
AttributeOfWrongFormat :
KdfParameters : {0, 0, 0, 0...}
SecretAgreementParameters : {12, 2, 0, 0...}
IsValidFormat : True
SecretAgreementAlgorithm : DH
KdfAlgorithm : SP800_108_CTR_HMAC
SecretAgreementPublicKeyLength: 2048
SecretAgreementPrivateKeyLength: 512
VersionNumber : 1
Расширение схемы каталога
Для поддержки Legacy Microsoft LAPS выполните на контроллере домена Эллес от имени пользователя, включенного в группу Schema Admins, с действующим билетом Kerberos:
samba-tool schema extend laps-v1
Для поддержки Windows LAPS выполните на контроллере домена Эллес от имени пользователя, включенного в группу Schema Admins, с действующим билетом Kerberos:
samba-tool schema extend laps-v2
| См. описание синтаксиса и параметров вызова подкоманды в разделе «Расширение схемы атрибутами для управления паролями локальных администраторов (LAPS)». |
Настройка разрешений
По умолчанию все действия по управлению паролями локальных администраторов доступны участникам группы Domain Admins. Для выдачи разрешений другим пользователям и группам необходимо добавить соответствующие записи (ACE) в список управления доступом к объекту компьютера или объекту подразделения (OU), который используется для управления учетными записями компьютеров.
Чтобы разрешить компьютерам, объединенным в подразделение (в примере — Workstations), обновлять пароли локальных администраторов, выполните на контроллере домена Эллес от имени пользователя, включенного в группу Domain Admins, с действующим билетом Kerberos:
samba-tool dsacl set --laps-v2 computer-self-permission --objectdn OU=Workstations,DC=elles,DC=inno,DC=tech
Чтобы разрешить отдельному пользователю или группе пользователей просматривать пароли локальных администраторов (в примере — HelpDesk), сгенерированные автоматически для компьютеров в составе подразделения (в примере — Workstations), выполните на контроллере домена Эллес от имени пользователя, включенного в группу Domain Admins, с действующим билетом Kerberos:
samba-tool dsacl set --laps-v2 read-password-permission --objectdn OU=Workstations,DC=elles,DC=inno,DC=tech --trusteedn CN=HelpDesk,CN=Users,DC=elles,DC=inno,DC=tech
Чтобы разрешить отдельному пользователю или группе пользователей устанавливать период действия паролей локальных администраторов (в примере — HelpDesk), сгенерированных автоматически для компьютеров в составе подразделения (в примере — Workstations), выполните на контроллере домена Эллес от имени пользователя, включенного в группу Domain Admins, с действующим билетом Kerberos:
samba-tool dsacl set --laps-v2 reset-password-permission --objectdn OU=Workstations,DC=elles,DC=inno,DC=tech --trusteedn CN=HelpDesk,CN=Users,DC=elles,DC=inno,DC=tech
| См. описание синтаксиса и параметров вызова подкоманды в разделе «Добавление записей в список управления доступом». |
Настройка групповой политики
Эллес предоставляет инструменты для настройки параметров групповой политики LAPS:
-
веб-интерфейс «Групповые политики» в составе приложения «Менеджер службы каталогов» (см. раздел «Групповые политики»);
-
группа подкоманд
gpo manage lapsутилиты командной строкиsamba-tool(см. описание синтаксиса и параметров вызова подкоманд в разделе «Управление групповыми политиками LAPS»).
Например, в утилите samba-tool доступны следующие подкоманды для работы с параметрами политик LAPS:
-
установка значения параметра в объекте групповой политики;
Например:
samba-tool gpo manage laps set {21575E6B-A315-4E5C-A4B9-FFACB0624FB2} \ --name=PasswordLength \ --value=12 -
удаление значения параметра из объекта групповой политики;
Например:
samba-tool gpo manage laps unset {21575E6B-A315-4E5C-A4B9-FFACB0624FB2} \ --name=AdministratorAccountName -
получение информации о параметре в объекте групповой политики;
Например:
samba-tool gpo manage laps get {21575E6B-A315-4E5C-A4B9-FFACB0624FB2} \ --name=PasswordAgeDays -
получение информации обо всех параметрах в объекте групповой политики.
Например, получение подробной информации обо всех параметрах, включая неустановленные:
samba-tool gpo manage laps list {21575E6B-A315-4E5C-A4B9-FFACB0624FB2} \ --all \ --verbose
| См. подробнее о работе с групповыми политиками в разделе «Администрирование объектов групповых политик (GPO)».) |
Установка модуля pam_laps
Для обеспечения работы LAPS на клиентских устройствах с ОС Linux требуется добавить на них модуль pam_laps и включить его в цепочку аутентификации.
Для этого на клиентской машине, введенной в домен с использованием Winbind в составе Эллес:
-
Выполните вход с использованием учетной записи с достаточными правами для работы с PAM-модулями.
-
Скопируйте модуль из каталога private, добавляемого при установке Эллес, в системный каталог с PAM-модулями:
cp */app/inno-samba/lib/private/libpam_laps-private-samba.so /lib/x86_64-linux-gnu/security/pam_laps.so
-
Добавьте в файл /etc/pam.d/login строку:
auth required pam_laps.so
После этого модуль pam_laps.so будет встроен в цепочку модулей аутентификации. При каждом входе пользователя на машину модуль будет проверять значением атрибута msLAPS-PasswordExpirationTime и при необходимости обновлять пароль как локально, так и на сервере (если на сервере нет соответствующего атрибута, то он будет создан).
Просмотр пароля локального администратора
Просмотр пароля локального администратора возможен только для тех пользователей и групп, которым разрешен доступ к атрибутам LAPS. По умолчанию расшифровать пароль могут только участники группы Domain Admins. Для выдачи разрешений другим пользователям и группам используйте команду samba-tool dsacl set (см. «Настройка разрешений»).
Для просмотра пароля у объекта компьютера должны быть атрибуты:
-
msLAPS-Password(если групповая политика разрешает использованием незашифрованных паролей) илиmsLAPS-EncryptedPassword(шифрованный пароль); -
msLAPS-PasswordExpirationTime(период действия пароля локального администратора).
Они добавляются после применения настроенной групповой политики LAPS (см. «Настройка групповой политики»):
-
на машинах с ОС Windows:
gpupdate /force
-
на машинах с ОС Linux с модулем
pam_laps:sudo /app/inno-samba/sbin/samba-gpupdate --force
Для просмотра локального администратора компьютера с помощью утилиты samba-tool выполните команду computer laps show от имени пользователя с действующим билетом Kerberos, который является участником группы Domain Admins или которому назначено соответствующее разрешение.
Например:
kinit Administrator@elles.inno.tech samba-tool computer laps show pc1 -H ldap://dc1.elles.inno.tech computer: CN=PC1,OU=Workstations,DC=elles,DC=inno,DC=tech ------- Current ------- username: Administrator password: niSfCME1J51YQ1 set at: 2025-12-09 15:29:00+03:00 expiration_time: 2025-12-10 15:29:00+03:00
В примере — компьютер pc1 находится в контейнере Workstations в домене elles.inno.tech с контроллером домена Эллес dc1. Команда выполняется от имени пользователя Administrator, входящего в группу Domain Admins.
| См. описание синтаксиса и параметров вызова подкоманды в разделе «Управление атрибутами LAPS компьютера». |
Принудительный сброс пароля локального администратора
Сброс (обновление) пароля локального администратора выполняется путем изменения значения атрибута msLAPS-PasswordExpirationTime для объекте компьютера. По истечении установленного значения клиентское расширение на машине генерирует новый пароль локального администратора, обновляет его в LDAP и устанавливает новый срок действия.
Группе или пользователю, от имени которых инициируется сброс пароля (если это не участники группы Domain Admins), должны быть выданы разрешения на чтение атрибутов LAPS и изменение атрибута msLAPS-PasswordExpirationTime (см.«Настройка разрешений»).
Чтобы принудительно сбросить пароль локального администратора на компьютере, установите значение 0 или любое значение в прошлом (в формате NTTIME) для атрибута msLAPS-PasswordExpirationTime в LDAP или с помощью оснастки Windows LAPS на машине с ОС Windows.
Например, используйте утилиту ldbmodify, ldbedit или ldapmodify для применения LDIF-файла с новым значением атрибута msLAPS-PasswordExpirationTime от имени пользователя с соответствующими разрешениями.
Пример LDIF-файла:
dn= CN=PC1,OU=Workstations,DC=elles,DC=inno,tech changetype: modify replace: msLAPS-PasswordExpirationTime msLAPS-PasswordExpirationTime: 0
В примере — компьютер pc1 находится в контейнере Workstations в домене elles.inno.tech.
Для применения изменения:
-
на машине с ОС Windows:
-
выполните:
gpupdate /force
-
перезагрузите машину;
-
-
на машине с ОС Linux с модулем
pam_lapsиспользуйтеsudo loginдля входа от имени доменного пользователя.
Клиентское расширение проверит, истек ли срок действия пароля, обновит локальной пароль администратора (поскольку msLAPS-PasswordExpirationTime=0) и запишет новые значения атрибутов в LDAP.