Обзор TLS-SSL (поставщик общих служб Schannel)

Область применения: Windows Server 2022, Windows Server 2019, Windows Server 2016, Windows 10

в этом разделе для ит-специалистов описываются изменения в работе поставщика поддержки безопасности Schannel (SSP), в том числе протокол tls, SSL (SSL) и протокола проверки подлинности датаграмм транспортного уровня (DTLS), для Windows Server 2012 R2, Windows Server 2012, Windows 8.1 и Windows 8.

Schannel — это поставщик поддержки безопасности (SSP), реализующий стандартные протоколы проверки подлинности SSL, TLS и DTLS Internet. Интерфейс поставщика поддержки безопасности (SSPI) является интерфейсом API, используемым системами Windows для выполнения функций, связанных с безопасностью, включая проверку подлинности. Интерфейс SSPI работает как общий интерфейс для нескольких поставщиков поддержки безопасности (SSP), включая поставщика SCHANNEL SSP.

Дополнительные сведения о реализации протокола TLS и протокола SSL в общедоступном поставщике услуг Schannel см. в статье Технический справочник по TLS/SSL (2003).

Функции TLS/SSL (Schannel SSP)

Ниже описаны возможности протокола TLS в поставщике общих служб SChannel.

Возобновление сеанса TLS

Протокол TLS, компонент поставщика поддержки безопасности SChannel, используется для защиты данных, передаваемых между приложениями в ненадежной сети. Протокол TLS/SSL можно использовать для проверки подлинности серверов и клиентских компьютеров, а также для шифрования сообщений между сторонами проверки подлинности.

Устройствам, подключающимся к серверам TLS, часто требуется повторное подключение из-за истечения срока действия сеанса. Windows 8.1 и Windows Server 2012 R2 теперь поддерживают RFC 5077 (возобновление сеанса TLS без Server-Side состояния). это изменение обеспечивает Windows Phone и Windows RT устройств с помощью:

  • Уменьшение использования ресурсов на сервере

  • Сниженная пропускная способность, повышающая эффективность клиентских подключений

  • Сокращение времени, затраченного на подтверждение TLS из-за возобновления соединения.

Примечание

Реализация RFC 5077 в клиентской части была добавлена в Windows 8.

Сведения о возобновлении сеанса TLS без отслеживания состояния см. в документе IETF RFC 5077.

Согласование протокола приложения

Windows Server 2012 R2 и Windows 8.1 поддерживают согласование протокола приложений TLS на стороне клиента, поэтому приложения могут использовать протоколы в рамках стандартной разработки HTTP 2,0, а пользователи могут получать доступ к веб-службы, таким как Google и Twitter, с помощью приложений, использующих протокол SPDY.

Принцип работы

Клиентские и серверные приложения включают расширение согласования протокола приложения путем предоставления списков поддерживаемых идентификаторов протоколов приложений в порядке убывания приоритета. Клиент TLS указывает, что он поддерживает согласование протокола приложения, включая расширение согласования протокола уровня приложений (ALPN) со списком протоколов, поддерживаемых клиентом, в сообщении ClientHello.

Когда TLS клиент отправляет запрос на сервер, сервер TLS считывает список поддерживаемых протоколов для поиска наиболее предпочтительного протокола приложения, также поддерживаемого клиентом. Если протокол найден, сервер отвечает с идентификатором выбранного протокола и продолжает подтверждение обычным образом. Если общего протокола приложений нет, сервер отправляет оповещение о неустранимом сбое подтверждения.

Работа с доверенными издателями для проверки подлинности клиента

Если требуется проверить подлинность клиентского компьютера с использованием SSL или TLS, можно настроить сервер для отправки списка доверенных издателей сертификатов. Этот список содержит набор издателей сертификатов, которым будет доверять сервер. Кроме того, в нем приводятся рекомендации по выбору нужного клиентского сертификата, если существует несколько сертификатов. Кроме того, цепочку сертификатов, отправляемую клиентским компьютером на сервер, необходимо проверить на соответствие списку настроенных доверенных издателей.

до Windows Server 2012 и Windows 8 приложения или процессы, в которых использовался поставщик услуг Schannel (включая HTTP.sys и IIS), могут предоставить список доверенных издателей, которые они поддерживали для проверки подлинности клиента с помощью списка доверия сертификатов (CTL).

в Windows Server 2012 и Windows 8 были внесены изменения в базовый процесс проверки подлинности, чтобы:

  • Управление списком доверенных издателей на основе списка доверия сертификатов больше не поддерживается.

  • По умолчанию Отправка списка надежных издателей отключена: значение по умолчанию для раздела реестра SendTrustedIssuerList теперь равно 0 (отключено по умолчанию), а не 1.

  • сохранена совместимость с предыдущими версиями операционных систем Windows.

Примечание

Если средство сопоставления систем включено клиентским приложением и настроено SendTrustedIssuers , модуль сопоставления систем будет добавляться CN=NT Authority в список издателей.

Какое значение это добавляет?

начиная с Windows Server 2012, использование списка доверия сертификатов заменено реализацией на основе хранилища сертификатов. Это обеспечивает хорошо знакомую управляемость с помощью существующих командлетов управления сертификатами поставщика PowerShell, а также с помощью средств командной строки, например certutil.exe.

хотя максимальный размер списка доверенных центров сертификации, поддерживаемого Schannel SSP (16 кб), остается таким же, как в Windows Server 2008 R2, в Windows Server 2012 существует новое выделенное хранилище сертификатов для издателей проверки подлинности клиентов, чтобы несвязанные сертификаты не включались в сообщение.

Как это работает?

в Windows Server 2012 список доверенных издателей настраивается с помощью хранилищ сертификатов. одно хранилище сертификатов глобального компьютера по умолчанию и другое, необязательное для каждого сайта. Источник списка определяется следующим образом.

  • Если существует конкретное хранилище учетных данных, настроенное для сайта, оно будет использоваться в качестве источника.

  • Если в хранилище, определяемом приложением, отсутствуют сертификаты, Schannel проверяет хранилище поставщиков проверки подлинности клиента на локальном компьютере и при наличии в нем сертификатов использует это хранилище в качестве источника. Если сертификат не обнаружен ни в одном из хранилищ, выполняется проверка хранилища доверенных корневых центров.

  • Если ни глобальные, ни локальные хранилища не содержат сертификатов, поставщик SChannel будет использовать хранилище доверенных корневых Цертификтатион центров сертификации в качестве источника списка надежных издателей. (это поведение для Windows Server 2008 R2.)

Если цертификтатион хранилище доверенных корневых центров сертификации содержит учетные данные корневого (самозаверяющего) и ЦС (CA) сертификатов, по умолчанию на сервер будут отправляться только сертификаты издателя ЦС.

Как настроить SChannel для использования хранилища сертификатов для доверенных издателей

архитектура поставщика услуг Schannel в Windows Server 2012 будет по умолчанию использовать хранилища, как описано выше, для управления списком надежных издателей. Можно по-прежнему использовать существующие командлеты управления сертификатами поставщика PowerShell, а также средства командной строки, например certutil.exe.

Сведения об управлении сертификатами с помощью поставщика PowerShell см. в разделе Командлеты управления службой сертификации AD CS в Windows.

Сведения об управлении сертификатами с помощью служебной программы сертификатов см. в разделе certutil.exe.

Сведения о том, какие данные, включая определяемое приложением хранилище, определяются в качестве учетных данных Schannel, см. в разделе Структура SCHANNEL_CRED (Windows).

Значения по умолчанию для режимов доверия

Существует три режима доверия при проверке подлинности клиента, поддерживаемых поставщиком Schannel. Режим доверия определяет, как выполняется проверка цепочки сертификатов клиента и является параметром на уровне системы, управляемым REG_DWORD "Клиентауструстмоде" в разделе HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\Schannel.

Применение Режим доверия Описание
0 Доверие компьютера (по умолчанию) Требует, чтобы сертификат клиента выдавался сертификатом из списка доверенных издателей.
1 Монопольное корневое доверие Требует, чтобы клиентский сертификат связывался с корневым сертификатом, содержащимся в определенном вызывающей стороной хранилище доверенного издателя. Сертификат также должен быть выдан издателем из списка доверенных издателей.
2 Монопольное доверие ЦС Требует, чтобы клиентский сертификат связывался либо с промежуточным сертификатом ЦС, либо с корневым сертификатом, содержащимся в определенном вызывающей стороной хранилище доверенного издателя.

Дополнительные сведения об ошибках проверки подлинности из-за проблем конфигурации доверенных издателей см. в статье 280256 базы знаний.

Протокол TLS поддерживает расширения индикатора имени сервера (SNI)

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

Какое значение это добавляет?

Дополнительные функциональные возможности:

  • Размещение нескольких веб-сайтов, работающих по протоколу SSL, с одним IP-адресом и портом.

  • Сниженное использование памяти при размещении нескольких веб-сайтов, работающих по протоколу SSL, на единственном веб-сервере.

  • Возможность одновременного подключения дополнительного числа пользователей к веб-сайтам, работающим по протоколу SSL.

  • Возможность предоставлять пользователям подсказки посредством компьютерного интерфейса для выбора правильного сертификата в процессе проверки подлинности клиента.

Принцип работы

Поставщик Schannel SSP поддерживает кэш в памяти, в котором сохраняются состояния клиентских подключений, разрешенные клиентам. Это позволяет клиентским компьютерам повторно подключиться к SSL-серверу без задержек и без полного подтверждения протокола SSL при последующих посещениях. это эффективное использование управления сертификатами позволяет размещать больше сайтов на одном Windows Server 2012 по сравнению с предыдущими версиями операционной системы.

Улучшен выбор сертификата пользователем. Это позволяет составлять список возможных имен издателей сертификатов с подсказками для пользователя, из которого пользователь выберет одно имя. Этот список настраивается с помощью групповой политики.

Протокол DTLS

В поставщик поддержки безопасности SCHANNEL добавлен протокол DTLS версии 1.0 Протокол DTLS обеспечивает конфиденциальность каналов связи для протоколов датаграмм. Данный протокол позволяет приложениям типа клиент-сервер взаимодействовать по определенному методу, обеспечивающему защиту от перехвата, взлома или подделки сообщений. Протокол DTLS основывается на протоколе TLS и предоставляет аналогичные гарантии безопасности, которые сокращают потребность в использовании IPsec или разработке пользовательского протокола безопасности на уровне приложений.

Какое значение это добавляет?

Датаграммы обычно используются в потоковых носителях, например в играх или в защищенных видеоконференциях. Добавление протокола DTLS к поставщику SCHANNEL позволяет использовать знакомую модель Windows SSPI для создания безопасного канала связи между клиентскими компьютерами и серверами. Протокол DTLS специально разработан таким образом, чтобы быть максимально похожим на протокол TLS, что позволяет сократить до минимума написание нового кода для системы безопасности и увеличить объем повторно используемых элементов инфраструктуры и кода.

Принцип работы

приложения, использующие DTLS через UDP, могут использовать модель SSPI в Windows Server 2012 и Windows 8. Определенные наборы шифров можно настраивать таким же образом, как и протокол TLS. В канале безопасности SCHANNEL продолжается использование поставщика служб шифрования CNG, который, в свою очередь, работает с сертификацией FIPS 140, реализованной в ОС Windows Vista.

Нерекомендуемые функции.

в поставщике общих служб Schannel для Windows Server 2012 и Windows 8 нет устаревших функций или функций.

Дополнительные ссылки