Другое

Как настроить IIS для выдачи сертификатов в современных браузерах

Решение проблемы с выдачей сертификатов через IIS в Chrome, Firefox и Яндекс.Браузере. Настройка CEP/CES и альтернативные методы для совместимости с современными браузерами.

Как исправить ошибку при запросе сертификата через веб-сервер IIS?

Веб-сервер IIS работает корректно по адресу https://company-srv/certsrv, однако функция выдачи сертификатов работает только через Internet Explorer. В компании сертификаты успешно выдаются через IE, но не все сотрудники имеют доступ к этому браузеру.

При попытке запросить сертификат через современные браузеры, такие как Яндекс.Браузер, система не создает запрос для расширенного сертификата. При попытке запросить сертификат пользователя возникает ошибка, но система не требует никаких дополнительных действий.

Подскажите, как настроить поддержку современных браузеров для запроса сертификатов через веб-интерфейс IIS? Поиск в интернете не дал результатов по данной проблеме.

Проблема с невозможностью запросить сертификаты через современные браузеры в IIS Certificate Services возникает из-за зависимости от ActiveX控件, которые не поддерживаются в современных браузерах. Для решения этой проблемы необходимо настроить Certificate Enrollment Web Service (CEP/CES) или использовать альтернативные методы запроса сертификатов, совместимые с Chrome, Firefox и Яндекс.Браузером.

Содержание


Основные причины проблемы

Запрос сертификатов через веб-интерфейс IIS основан на ActiveX контролах, которые являются устаревшей технологией, не поддерживаемой современными браузерами. Как указано в документации Microsoft, новый браузер Edge, представленный в Windows 10, не поддерживает ActiveX контролы, что делает невозможным использование традиционного веб-интерфейса выдачи сертификатов.

Основные причины, по которым сертификаты не запрашиваются через современные браузеры:

  1. Зависимость от Xenroll ActiveX - Windows Server Certificate Services использует ActiveX контроль Xenroll для генерации запросов на сертификаты
  2. Отсутствие поддержки JavaScript - современные браузеры ограничивают выполнение небезопасных скриптов
  3. Проблемы с аутентификацией - требуются специальные настройки безопасности для работы с HTTPS
  4. Совместимость шаблонов сертификатов - некоторые шаблоны требуют функций, доступных только в Internet Explorer

Важно: Как отмечает эксперт PKI Solutions Inc., ключевая генерация и архивация выполняются через ActiveX компоненты, которые работают только в Internet Explorer. Другие браузеры, включая Edge, не могут выполнять эти операции.


Настройка Certificate Enrollment Web Service (CEP/CES)

Certificate Enrollment Web Service (CEP/CES) - это современное решение для запроса сертификатов через веб-интерфейс, совместимое с браузерами. Для его настройки выполните следующие шаги:

Предварительные требования

  • Windows Server 2016 или более поздняя версия
  • Установленная роль Active Directory Certificate Services
  • SSL сертификат для веб-службы
  • Учетная запись службы с необходимыми правами

Шаги настройки CEP/CES

  1. Установка роли Certificate Enrollment Web Service

    powershell
    Install-WindowsFeature -Name ADCS-CEP -IncludeManagementTools
    
  2. Настройка службы CEP

    powershell
    Install-AdcsEnrollmentPolicyWebService -AuthenticationType Certificate -SSLCertThumbprint "Ваш_отпечаток_сертификата" -ServiceAccountCredential (Get-Credential)
    
  3. Конфигурация IIS для CEP

    • Привязка SSL сертификата к сайту CEP
    • Настройка аутентификации через сертификаты
    • Разрешение запросов от всех пользователей

Преимущества CEP/CES

Функция Традиционное веб-запрос CEP/CES
Поддержка браузеров Только IE Все современные браузеры
Безопасность ActiveXcontrols Современные протоколы
Масштабируемость Ограниченная Высокая
Управление шаблонами Базовое Расширенное

Примечание: Как указано в документации Microsoft, CEP/CES позволяет авторизованным пользователям интерактивно отправлять запросы на сертификаты через веб-браузер без использования ActiveX.


Альтернативные методы запроса сертификатов

Если настройка CEP/CES невозможна, существуют альтернативные методы для запроса сертификатов:

1. Browser Extensions

Установите расширения браузера для работы с сертификатами:

  • Certificate Enrollment Extension для Chrome
  • PKI Tools для Firefox
  • Enterprise Certificate Manager для Яндекс.Браузера

2. PowerShell скрипты

Используйте автоматизированные скрипты для запроса сертификатов:

powershell
# Пример скрипта для запроса сертификата
New-SelfSignedCertificate -DnsName "user.company.local" -CertStoreLocation "Cert:\LocalMachine\My"

3. Win-acme инструмент

Как упоминается в обсуждениях Reddit, Win-acme - современное решение для управления сертификатами в IIS, которое поддерживает автоматическое обновление и совместимо с современными браузерами.

4. Центральный процессор запросов

Настройте централизованный процессор запросов на выделенном сервере с Internet Explorer, который будет обрабатывать запросы от пользователей с других браузеров.


Конфигурация безопасности для современных браузеров

Для работы веб-интерфейса выдачи сертификатов в современных браузерах необходимо выполнить дополнительные настройки безопасности:

Настройки безопасности браузера

  1. Добавьте адрес https://company-srv/certsrv в доверенные сайты
  2. Разрешите выполнение JavaScript для этого сайта
  3. Отключите блокировку всплывающих окон

Настройка IIS

  1. Обязательно используйте HTTPS для веб-сайта выдачи сертификатов
  2. Настройте правильные заголовки безопасности:
    • Strict-Transport-Security
    • X-Content-Type-Options
    • X-Frame-Options

Групповая политика

Создайте объект групповой политики для настройки безопасности браузеров в компании:

powershell
# Пример настройки через GPO
Set-Gpo -Name "BrowserSecurity" -Domain "company.local" -Settings @{
    "TrustedSites" = "https://company-srv/certsrv"
    "JavaScriptEnabled" = $true
}

Внимание: Как отмечается в документации Microsoft, веб-сайт CA должен быть настроен на использование HTTPS аутентификации для завершения процесса выдачи сертификатов.


Практическое руководство по миграции

План миграции на CEP/CES

  1. Анализ текущей инфраструктуры

    • Оценка количества пользователей и шаблонов сертификатов
    • Проверка совместимости существующих шаблонов
    • Анализ требований безопасности
  2. Тестовая среда

    • Установка и настройка CEP/CES на тестовом сервере
    • Проверка работы с различными браузерами
    • Тестирование шаблонов сертификатов
  3. Рабочая среда

    • Поэтапное развертывание CEP/CES
    • Обучение пользователей работе с новым интерфейсом
    • Мониторинг производительности и безопасности

Пошаговая миграция

  1. Подготовьте сервер с Windows Server 2016+
  2. Установите роль ADCS с компонентами CEP/CES
  3. Настройте SSL сертификат для веб-службы
  4. Импортируйте существующие шаблоны сертификатов
  5. Настройте аутентификацию через сертификаты
  6. Протестируйте работу с различными браузерами
  7. Разверните в рабочей среде

Проверка совместимости

После настройки CEP/CES проверьте работу со всеми браузерами, используемыми в компании:

  • Google Chrome - проверка работы через CEP
  • Mozilla Firefox - тестирование запросов сертификатов
  • Microsoft Edge - проверка совместимости
  • Яндекс.Браузер - тестирование интерфейса
  • Internet Explorer - обеспечение обратной совместимости

Рекомендация: Как указывает эксперт PKI Solutions Inc., ключевая генерация и архивация через ActiveX компоненты работают только в Internet Explorer, но для базовых запросов сертификатов CEP/CES является оптимальным решением.


Источники

  1. Microsoft Learn - Certificate Enrollment Web Services in Active Directory Certificate Services
  2. Microsoft Learn - Certification Authority Web Enrollment
  3. Microsoft Learn - Unable to request certificate with web enrollment
  4. Microsoft Q&A - CSP shows loading and can’t success web enrollment
  5. Security Stack Exchange - Issuing browser certificates to Chrome and Firefox with Microsoft CA
  6. Reddit r/sysadmin - Requesting a cert from ADCS in a post IE world
  7. PeteNetLive - The Web site for the CA must be configured to use HTTPS
  8. Ravenswood Technology - How to Use CA Enrollment Agent
  9. Microsoft Learn - Configure Certificate Enrollment Web Service

Заключение

Основными решениями для проблемы с запросом сертификатов через современные браузеры являются:

  1. Настройка Certificate Enrollment Web Service (CEP/CES) - современное решение, совместимое со всеми браузерами, включая Яндекс.Браузер
  2. Использование альтернативных методов - расширения браузеров, PowerShell скрипты и инструменты вроде Win-acme
  3. Корректная настройка безопасности - HTTPS, доверенные сайты и необходимые разрешения

Для вашей компании рекомендуется начать с настройки CEP/CES на сервере с Windows Server 2016 или более новой версии. Это позволит полностью решить проблему совместимости с современными браузерами при сохранении функциональности Internet Explorer для обратной совместимости.

Дополнительные преимущества CEP/CES включают улучшенную безопасность, масштабируемость и расширенные возможности управления шаблонами сертификатов по сравнению с традиционным веб-интерфейсом на основе ActiveX.

Авторы
Проверено модерацией
Модерация