Windows Certificate Services

Материал из ciberhelp
Перейти к: навигация, поиск
Установка и администрирование Центра сертификации
TrainInHard

Установка может быть в Standalone и Enterprise. НАзвания сами за себя. Один интегрирован в домен, другой нет

Подготовка к установке

Создаем файл C:\Windows\CAPolicy.inf

[Version] Signature= "$Windows NT$"

[certsrv_server]

Устанавливаем длину ключа, которая будет использоваться
*только* при обновлении сертификата CA

RenewalKeyLength = 2048

Устанавливаем срок действия обновлённого сертификата.
Будет использоваться *только* при обновлении сертификата CA

RenewalValidityPeriodUnits = 10

Устанавливаем единицу измерения для предыдущего параметра

RenewalValidityPeriod = years

Устанавливаем периодичность публикации CRL в 90 дней (или 3 месяца)

CRLPeriodUnits = 90 CRLPeriod = days

Устанавливаем срок продления CRL. Фактический срок действия CRL для клиентов увеличивается на
на заданный период, который в нашем случае равен 2 неделям. Это означает, что сервер CA будет
публиковать новый CRL каждые 90 дней, а срок действия этого CRL будет 104 дня. Это даст
администраторам возможность успеть забрать новый CRL с сервера и распространить его в нужные локации

CRLOverlapUnits = 2 CRLOverlapPeriod = weeks

Отключаем публикацию Delta CRL

CRLDeltaPeriodUnits = 0 CRLDeltaPeriod = hours

Включаем дискретные алгоритмы для подписей. Не включайте его если у вас есть клиенты под управлением
Windows 2000, Windows XP, Windows Server 2003, поскольку указанные системы не поддерживают альтернативные подписи.
AlternateSignatureAlgorithm = 1

Установка

Рекомендации
https://www.sysadmins.lv/blog-ru/planirovanie-rasshirenij-cdp-i-aia.aspx

Certificate AD 1.png
Certificate AD 2.png

Настройка RootCA

:: Создаём папку в корне диска C, где будут храниться CRT и CRL файлы
md C:\CertData
:: Задаём точки публикации CRL файлов и ссылки, публикуемые в издаваемых сертификатах. То же самое и для CRT файлов.
certutil -setreg CA\CRLPublicationURLs "65:%windir%\system32\CertSrv\CertEnroll\%%3%%8%%9.crl\n65:C:\CertData\{Adatum}_RCA%%8.crl\n2:http://www.{adatum.com}/pki/{Adatum}_RCA%%8.crl"
certutil -setreg CA\CACertPublicationURLs "1:%windir%\system32\CertSrv\CertEnroll\%%1_%%3%%4.crt\n2:http://www.{adatum.com}/pki/{Adatum}_RCA%%4.crt"
:: Если будет использоваться OCSP для корневого CA, расширение AIA должно выглядеть примерно cледующим образом:
:: certutil -setreg CA\CACertPublicationURLs "1:%windir%\system32\CertSrv\CertEnroll\%%1_%%3%%4.crt\n2:http://www.{adatum.com}/pki/{Adatum}_RCA%%4.crt\n32:http://www.{adatum.com}/ocsp"
:: учтите, что при использовании этого варианта, предыдущую строку требуется закомментировать или удалить
:: а эту строку раскомментировать соответственно.
:: Поскольку мы не можем управлять публикацией CRT файлов, мы его
:: переименовываем в нужное имя и копируем в папку CertData 
ren %windir%\system32\CertSrv\CertEnroll\*.crt {Adatum}_RCA.crt
copy %windir%\system32\CertSrv\CertEnroll\{Adatum}_RCA.crt C:\CertData
:: задаём срок действия издаваемых сертификатов равным 10 лет 
certutil -setreg CA\ValidityPeriodUnits 10
certutil -setreg CA\ValidityPeriod "Years"
:: Задаём параметры публикации CRL (повторяем, что было указано в CAPolicy.inf) 
certutil -setreg CA\CRLPeriodUnits 90
certutil -setreg CA\CRLPeriod "Days"
certutil -setreg CA\CRLDeltaPeriodUnits 0
certutil -setreg CA\CRLDeltaPeriod "Days"
certutil -setreg CA\CRLOverlapPeriod "Weeks"
certutil -setreg CA\CRLOverlapUnits 2
:: Включаем AlternateSignatureAlgorithm. Не включайте его если у вас есть клиенты под управлением
:: Windows 2000, Windows XP, Windows Server 2003, поскольку указанные системы не поддерживают альтернативные подписи.
:: Certutil -setreg CA\csp\AlternateSignatureAlgorithm 1
:: включаем полный аудит для сервера CA 
certutil -setreg CA\AuditFilter 127 
:: Включаем поддержку сертификатов OCSP Response Signing на Offline CA:
certutil -v -setreg policy\editflags +EDITF_ENABLEOCSPREVNOCHECK
net stop certsvc && net start certsvc
:: Публикуем новый CRL в новую локацию.
certutil -CRL
1 сервер RootCA настраиваем в режиме StandAlone. Генерируем сертификат корневой
certsvr
Properties
General - содержит имя, список сертификатов сервера
Policy module - политика выдачи сертификатов. Либо автоматически разрешать, либо требовать подтвердждения администратора. 
Enrollments Agent
Certification Managers - можно делегировать права для других пользователей
EXTENSIONS - настраивается вручную. CDP - отозванные сертификаты. AIA - цепочка сертификатов
Убираем LDAP, file
Редактируем пути хранения списков отзыва и сертификатов. НЕ на рутовом сервере
В подчиненные будем копировать время от времени.
http://lon-host1.ciberhelp.pro/Certs/<CaName><CRLNameSuffix><DeltaCRLAllowed>.crl К примеру, вот так. Это папка на веб сервере, где будут храниться сертификаты или списки отзывово
Ставим галочку, что включаем эту ссылку в расширение
http://lon-host1.ciberhelp.pro/certAIA/<ServerDNSName><CaName><CertificateName>.crt для AIA
Включить галочки Include in the AIA of issued ....

Настройка подчиненного CA

Ставим аналогичено рутовому, но как подчиненный
Возвращаемся на рутовый сервер и экспортируем рутовый сертификат
Устанавливаем в доверенные и продолжаем настройку подчиненного сервера. снова генерируем новый серт
Во время установки сгенерируется файл запроса.
Через веб доступ на корневом центре делаем запрос.
Подтверждаем запрос на корневом центре
возвращаемся на подчиненном на начальную страницу и загружаем сертификат.

C RootCA перенести
C:\Windows\System32\certsrv\CertEnroll\ыдлва.crt
C:\Windows\System32\certsrv\CertEnroll\RootCAnew.crl на подчиненный сервер. Кидаем в виртуальные директории, которые созданы на подчиненном сервере
certsrv - прав кнопкой - publish на рут сервере. Зачем? хОроший вопрос)
На подчиненном
Сайт - Request Filtering -> Allow double escaping
certutil –setreg ca\CRLFlags +CRLF_REVCHECK_IGNORE_OFFLINE  если ругается на оффлине . Потом снова ключить
http://cert.ciberhelp.pro/subCA/CDP/<CaName><CRLNameSuffix>.crl в свойствах