Управление групповыми политиками для автоматической регистрации сертификатов
Назначение групповых политик для автоматической регистрации сертификатов — обеспечить возможность получения клиентскими машинами сертификатов, выдаваемых службами сертификатов Active Directory (Active Directory Certificate Services, AD CS). Для отслеживания сертификатов Samba использует службу certmonger с плагином cepces.
Серверное расширение (SSE) доступно только в составе GPME. Команда samba-tool gpo manage не предоставляет отдельные подкоманды для работы с политиками для автоматической регистрации сертификатов.
Для работы политик требуется доступ к центру сертификации на сервере под управлением ОС Windows, на котором должны быть установлены и настроены роли «Центр сертификации» (Certification Authority), «Веб-служба политик регистрации сертификатов» (Certificate Enrollment Policy Web Service) и «Веб-служба регистрации сертификатов» (Certificate Enrollment Web Service). Для упрощения процесса получения цепочки корневых сертификатов клиентами дополнительно может быть установлена и настроена роль «Служба регистрации на сетевых устройствах» (Network Device Enrollment Service).
Клиентское расширение (CSE) добавляет новые центры сертификации в certmonger и обеспечивает автоматическое отслеживание новых сертификатов на основе назначенных шаблонов сертификатов. Для работы CSE требуется установка пакетов certmonger и cepces.
По умолчанию сертификаты устанавливаются в каталог /var/lib/samba/certs, а приватные ключи — в каталог /var/lib/samba/private/certs. Для размещения файлов в более удобном месте может потребоваться настроить групповую политику для создания соответствующих символических ссылок.
Пример настройки групповой политики для автоматической регистрации сертификатов с помощью GPME:
-
На сервере под управлением ОС Windows с необходимыми ролями AD CS откройте GPME и в области навигации редактора в левой панели раскройте Конфигурация компьютера → Политики → Конфигурация Windows → Параметры безопасности → Политики открытого ключа.
-
В панели справа дважды нажмите пункт Клиент служб сертификации: автоматическая регистрация.
-
В диалоговом окне Свойства установите Включено и выберите опции обновления сертификатов с истекшим сроком действия и обновления сертификатов, использующих шаблоны сертификатов. Нажмите Применить и ОК.
-
В панели редактора политик дважды нажмите пункт Клиент служб сертификации: политика регистрации сертификатов.
-
В диалоговом окне Свойства установите Включено и нажмите Добавить.
-
В диалоговом окне Сервер политики регистрации сертификатов укажите URI сервера и выберите в поле Тип проверки подлинности значение Встроенная проверка подлинности Windows. Нажмите Добавить.
-
В диалоговом окне Свойства нажмите Применить и ОК.
-
Откройте консоль управления центром сертификации (certsrv.msc) и в области навигации в левой панели выберите Шаблоны сертификатов, нажмите правую кнопку мыши и в контекстном меню выберите Управлять.
-
В правой панели оснастки выберите один из существующих шаблонов, нажмите правую кнопку мыши и в контекстном меню выберите Скопировать шаблон.
-
В диалоговом окне Свойства нового шаблона задайте параметры шаблона: имя (например, TestComputerTemplate), срок действия, периодичность обновления, требования к шифрованию и т. д. Нажмите Применить и ОК.
-
Чтобы подключить новый шаблон, в области навигации в левой панели выберите Шаблоны сертификатов, нажмите правую кнопку мыши и в контекстном меню выберите Создать и затем Выдаваемый шаблон сертификата.
-
В диалоговом окне Включение шаблонов сертификатов выберите добавленный шаблон и нажмите ОК.
Новый шаблон отображается в списке подключенных шаблонов в правой панели оснастки для управления центром сертификации.
-
Для проверки доступности политики на клиентской машине с ОС Linux — участнике домена с установленными пакетами
certmongerиcepcesвыполните:sudo /app/inno-samba/sbin/samba-gpupdate --rsop Resultant Set of Policy Computer Policy GPO: Default Domain Policy ================================================================= CSE: gp_cert_auto_enroll_ext ----------------------------------------------------------- Policy Type: Auto Enrollment Policy ----------------------------------------------------------- [ elles-WIN-VUR8LN6A0DA-CA ] = [ CA Certificate ] = -----BEGIN CERTIFICATE----- <REDACTED> -----END CERTIFICATE----- [ Auto Enrollment Server ] = WIN-VUR8LN6A0DA.elles.inno.tech [ Templates ] = [ Machine ] [ TestComputerTemplate ] ----------------------------------------------------------- ----------------------------------------------------------- ================================================================= -
Обновите политики на клиентской машине:
sudo /app/inno-samba/sbin/samba-gpupdate --force
-
Для получения списка центров аутентификации выполните:
sudo getcert list-cas CA 'elles-WIN-VUR8LN6A0DA-CA': is-default: no ca-type: EXTERNAL helper-location: /usr/libexec/certmonger/cepces-submit \ --server=WIN-VUR8LN6A0DA.elles.inno.tech \ --auth=Kerberos -
Для получения списка сертификатов выполните:
sudo getcert list Number of certificates and requests being tracked: 2. Request ID 'elles-WIN-VUR8LN6A0DA-CA.Machine': status: MONITORING stuck: no key pair storage: type=FILE, location='/app/inno-samba/private/certs/ elles-WIN-VUR8LN6A0DA-CA.Machine.key' certificate: type=FILE, location='/app/inno-samba/certs/ elles-WIN-VUR8LN6A0DA-CA.Machine.crt' CA: elles-WIN-VUR8LN6A0DA-CA issuer: CN=elles-WIN-VUR8LN6A0DA-CA, DC=elles,DC=inno,DC=tech subject: CN=dc1.elles.inno.tech issued: 2023-09-15 11:30:13 UTC expires: 2024-09-15 11:30:13 UTC dns: dc1.elles.inno.tech key usage: digitalSignature,keyEncipherment eku: id-kp-clientAuth,id-kp-serverAuth certificate template/profile: Machine profile: Machine pre-save command: post-save command: track: yes auto-renew: yes Request ID 'elles-WIN-VUR8LN6A0DA-CA.TestComputerTemplate': status: MONITORING stuck: no key pair storage: type=FILE, location='/app/inno-samba/private/certs/ elles-WIN-VUR8LN6A0DA-CA.TestComputerTemplate.key' certificate: type=FILE, location='/app/inno-samba/certs/ elles-WIN-VUR8LN6A0DA-CA.TestComputerTemplate.crt' CA: elles-WIN-VUR8LN6A0DA-CA issuer: CN=elles-WIN-VUR8LN6A0DA-CA, DC=elles,DC=inno,DC=tech subject: issued: 2023-09-15 11:30:13 UTC expires: 2024-09-15 11:30:13 UTC dns: dc1.elles.inno.tech key usage: digitalSignature,keyEncipherment eku: id-kp-serverAuth,id-kp-clientAuth profile: TestComputerTemplate pre-save command: post-save command: track: yes auto-renew: yes