Управление СЕРТИФИКАТами TLS/SSL в AD FS и WAP в Windows Server 2016
В этой статье описывается, как развернуть новый TLS/SSL-сертификат на серверах служб федерации Active Directory (AD FS) и прокси веб-приложения (WAP).
Примечание.
Рекомендуемый способ заменить TLS/SSL-сертификат для фермы AD FS — использовать Microsoft Entra Connect. Дополнительные сведения см. в статье "Обновление TLS/SSL-сертификата для фермы служб федерации Active Directory (AD FS)".
Получение СЕРТИФИКАТов TLS/SSL
Для производственных ферм AD FS рекомендуется общедоступный доверенный TLS/SSL-сертификат. AD FS получает этот сертификат, отправив запрос на подпись сертификата (CSR) стороннему поставщику общедоступных сертификатов. Существует несколько способов создания CSR, включая компьютер с Windows 7 или более поздней версии. У поставщика должна быть документация по этому процессу.
- Убедитесь, что сертификат соответствует требованиям сертификатов AD FS и TLS/SSL для прокси сервера веб-приложения.
Необходимые сертификаты
Для всех серверов AD FS и WAP следует использовать общий TLS/SSL-сертификат. Подробные требования см. в Требованиях к сертификату TLS/SSL для AD FS и прокси веб-приложений.
Требования к TLS- и SSL-сертификатам
Требования, включая определение корня доверия и расширений, см. в требования к AD FS и сертификатам TLS/SSL для Прокси веб-приложений.
Замена TLS/SSL-сертификата для AD FS
Примечание.
Сертификат TLS/SSL AD FS не совпадает с сертификатом связи службы AD FS, найденным в оснастке управления AD FS. Чтобы изменить TLS/SSL-сертификат AD FS, необходимо использовать PowerShell.
Во-первых, определите, работают ли серверы AD FS в режиме привязки проверки подлинности сертификата по умолчанию или в альтернативном режиме привязки TLS клиента.
Замена TLS/SSL-сертификата для AD FS, запущенного в режиме привязки сертификата по умолчанию
AD FS по умолчанию выполняет проверку подлинности сертификата устройства через порт 443 и проверку подлинности сертификата пользователя через порт 49443 (или настраиваемый порт, который не является 443).
В этом режиме используйте командлет PowerShell Set-AdfsSslCertificate
для управления TLS/SSL-сертификатом, как показано на следующих шагах:
Сначала необходимо получить новый сертификат. Его можно получить, отправив запрос на подпись сертификата (CSR) стороннему поставщику общедоступных сертификатов. Существует различные способы создания CSR, включая компьютер с Windows 7 или более поздней версии. У поставщика должна быть документация по этому процессу.
- Убедитесь, что сертификат соответствует требованиям SSL-сертификата AD FS и прокси-сервера веб-приложений
После получения ответа от поставщика сертификатов импортируйте его в локальное хранилище на компьютере в каждом AD FS и WAP.
На сервере основной AD FS используйте следующий командлет, чтобы установить новый TLS/SSL-сертификат:
Set-AdfsSslCertificate -Thumbprint '<thumbprint of new cert>'
Чтобы найти отпечаток сертификата, выполните следующую команду:
dir Cert:\LocalMachine\My\
Замена TLS/SSL-сертификата для AD FS, работающего в альтернативном режиме привязки TLS
При настройке в альтернативном режиме привязки TLS клиента AD FS выполняет проверку подлинности сертификата устройства через порт 443. Он также выполняет проверку подлинности сертификата пользователя через порт 443 в другом имени узла. Имя узла сертификата пользователя — это имя узла AD FS с добавлением certauth
в начале, например certauth.fs.contoso.com
.
В этом режиме используйте командлет PowerShell Set-AdfsAlternateTlsClientBinding
для управления TLS/SSL-сертификатом. Этот командлет управляет не только альтернативной привязкой TLS клиента, но и всеми другими привязками, в которых AD FS задает tls/SSL-сертификат.
Чтобы заменить TLS/SSL-сертификат для AD FS, работающий в альтернативном режиме привязки TLS, выполните следующие действия.
Сначала необходимо получить новый сертификат. Его можно получить, отправив запрос на подпись сертификата (CSR) стороннему поставщику общедоступных сертификатов. Существует различные способы создания CSR, включая компьютер с Windows 7 или более поздней версии. У поставщика должна быть документация по этому процессу.
- Убедитесь, что сертификат отвечает требованиям как AD FS, так и требованиям TLS/SSL-сертификата для прокси веб-приложений,.
После того, как вы получите ответ от вашего поставщика сертификатов, импортируйте его в локальное хранилище сертификатов на каждой машине AD FS и WAP.
На основном сервере AD FS используйте следующий командлет, чтобы установить новый TLS/SSL-сертификат.
Set-AdfsAlternateTlsClientBinding -Thumbprint '<thumbprint of new cert>'
Чтобы найти отпечаток сертификата, выполните следующую команду:
dir Cert:\LocalMachine\My\
Другие аспекты, касающиеся TLS/SSL-сертификатов для привязки проверки подлинности по умолчанию и альтернативного режима привязки TLS
- Командлеты
Set-AdfsSslCertificate
иSet-AdfsAlternateTlsClientBinding
являются командлетами для нескольких узлов, поэтому они должны выполняться только из основного узла. Командлеты также обновляют все узлы в серверной ферме. Это изменение новое в Server 2016. На сервере 2012 R2 необходимо было запустить командлет на каждом сервере. - Командлеты
Set-AdfsSslCertificate
иSet-AdfsAlternateTlsClientBinding
необходимо выполнять только на основном сервере. Основной сервер должен работать под управлением Server 2016, и вы должны повысить уровень функциональности фермы до версии 2016. - Командлеты
Set-AdfsSslCertificate
иSet-AdfsAlternateTlsClientBinding
используют удаленное взаимодействие PowerShell для настройки других серверов AD FS, убедитесь, что порт 5985 (TCP) открыт на других узлах. - Командлеты
Set-AdfsSslCertificate
иSet-AdfsAlternateTlsClientBinding
предоставляют субъекту adfssrv разрешения на чтение закрытых ключей TLS/SSL-сертификата. Этот субъект представляет собой службу AD FS. Не обязательно предоставить учетной записи службы AD FS доступ на чтение к закрытым ключам TLS/SSL-сертификата.
Замена TLS/SSL-сертификата для прокси веб-приложения
Если вы хотите настроить как привязку аутентификации сертификата по умолчанию, так и альтернативный режим привязки TLS клиента для WAP, вы можете использовать командлет Set-WebApplicationProxySslCertificate
.
Чтобы заменить SSL-сертификат WAP на каждом сервере WAP, используйте следующий командлет, чтобы установить новый TLS/SSL-сертификат:
Set-WebApplicationProxySslCertificate -Thumbprint '<thumbprint of new cert>'
Если вышеупомянутый командлет завершается ошибкой, так как срок действия старого сертификата уже истёк, перенастраивайте прокси-сервер с помощью следующих командлетов:
$cred = Get-Credential
Введите учетные данные пользователя домена, который является локальным администратором на сервере AD FS
Install-WebApplicationProxy -FederationServiceTrustCredential $cred -CertificateThumbprint '<thumbprint of new cert>' -FederationServiceName 'fs.contoso.com'