Поделиться через


Управление СЕРТИФИКАТами 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 и 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-сертификатом, как показано на следующих шагах:

  1. Сначала необходимо получить новый сертификат. Его можно получить, отправив запрос на подпись сертификата (CSR) стороннему поставщику общедоступных сертификатов. Существует различные способы создания CSR, включая компьютер с Windows 7 или более поздней версии. У поставщика должна быть документация по этому процессу.

  2. После получения ответа от поставщика сертификатов импортируйте его в локальное хранилище на компьютере в каждом AD FS и WAP.

  3. На сервере основной 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, выполните следующие действия.

  1. Сначала необходимо получить новый сертификат. Его можно получить, отправив запрос на подпись сертификата (CSR) стороннему поставщику общедоступных сертификатов. Существует различные способы создания CSR, включая компьютер с Windows 7 или более поздней версии. У поставщика должна быть документация по этому процессу.

  2. После того, как вы получите ответ от вашего поставщика сертификатов, импортируйте его в локальное хранилище сертификатов на каждой машине AD FS и WAP.

  3. На основном сервере 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'