Как включить TLS 1.2 на клиентах
Область применения: Configuration Manager (Current Branch)
При включении TLS 1.2 для среды Configuration Manager сначала убедитесь, что клиенты поддерживают и правильно настроены для использования TLS 1.2 перед включением TLS 1.2 и отключением старых протоколов на серверах сайта и удаленных системах сайта. Существует три задачи для включения TLS 1.2 на клиентах:
- Обновление Windows и WinHTTP
- Убедитесь, что протокол TLS 1.2 включен в качестве протокола для SChannel на уровне операционной системы.
- Обновление и настройка платформа .NET Framework для поддержки TLS 1.2
Дополнительные сведения о зависимостях для конкретных функций и сценариев Configuration Manager см. в статье О включении TLS 1.2.
Windows 8.1, Windows Server 2012 R2, Windows 10, Windows Server 2016 и более поздних версий Windows изначально поддерживают протокол TLS 1.2 для обмена данными между клиентом и сервером через WinHTTP.
В более ранних версиях Windows, таких как Windows 7 или Windows Server 2012, протокол TLS 1.1 или TLS 1.2 по умолчанию не включается для безопасного взаимодействия с помощью WinHTTP. Для этих более ранних версий Windows установите update 3140245 , чтобы включить приведенное ниже значение реестра, которое можно задать для добавления TLS 1.1 и TLS 1.2 в список защищенных протоколов по умолчанию для WinHTTP. Установив исправление, создайте следующие значения реестра:
Важно!
Включите эти параметры на всех клиентах под управлением более ранних версий Windows перед включением TLS 1.2 и отключением старых протоколов на серверах Configuration Manager. В противном случае их можно непреднамеренно захотеть.
Проверьте значение DefaultSecureProtocols
параметра реестра, например:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\WinHttp\
DefaultSecureProtocols = (DWORD): 0xAA0
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Internet Settings\WinHttp\
DefaultSecureProtocols = (DWORD): 0xAA0
Если изменить это значение, перезагрузите компьютер.
В приведенном выше примере показано значение 0xAA0
параметра WinHTTP DefaultSecureProtocols
.
Обновите, чтобы включить протоколы TLS 1.1 и TLS 1.2 в качестве протоколов безопасности по умолчанию в WinHTTP в Windows, в списке шестнадцатеричных значений для каждого протокола. По умолчанию в Windows это значение предназначено 0x0A0
для включения SSL 3.0 и TLS 1.0 для WinHTTP. В приведенном выше примере эти значения по умолчанию сохраняются, а также протоколы TLS 1.1 и TLS 1.2 для WinHTTP. Эта конфигурация гарантирует, что изменение не нарушает работу любого другого приложения, которое по-прежнему может полагаться на SSL 3.0 или TLS 1.0. Значение 0xA00
можно использовать, чтобы включить только TLS 1.1 и TLS 1.2. Configuration Manager поддерживает наиболее безопасный протокол, который Windows согласовывает между обоими устройствами.
Если вы хотите полностью отключить SSL 3.0 и TLS 1.0, используйте параметр SChannel disabled protocols (Отключенные протоколы SChannel) в Windows. Дополнительные сведения см. в разделе Ограничение использования определенных криптографических алгоритмов и протоколов в Schannel.dll.
Убедитесь, что протокол TLS 1.2 включен в качестве протокола для SChannel на уровне операционной системы.
В большинстве случаев использование протокола контролируется на трех уровнях: на уровне операционной системы, на уровне платформы или платформы, а также на уровне приложения. Протокол TLS 1.2 включен по умолчанию на уровне операционной системы. Убедившись, что значения реестра .NET настроены для включения TLS 1.2 и убедитесь, что среда правильно использует TLS 1.2 в сети, может потребоваться изменить SChannel\Protocols
раздел реестра, чтобы отключить старые, менее безопасные протоколы. Дополнительные сведения об отключении TLS 1.0 и 1.1 см. в разделе Настройка протоколов Schannel в реестре Windows.
Сначала определите установленные версии .NET. Подробные сведения см. в статье Как узнать, какие версии и пакеты обновления Microsoft .NET Framework установлены на компьютере
Установите обновления .NET, чтобы включить надежное шифрование. Для некоторых версий платформа .NET Framework могут потребоваться обновления для включения надежного шифрования. Воспользуйтесь следующими инструкциями:
NET Framework 4.6.2 и более поздних версий поддерживает TLS 1.1 и TLS 1.2. Подтвердите параметры реестра, но никаких дополнительных изменений не требуется.
Примечание
Начиная с версии 2107 для Configuration Manager требуется Майкрософт платформа .NET Framework версии 4.6.2 для серверов сайта, определенных систем сайта, клиентов и консоли. Если это возможно в вашей среде, установите последнюю версию .NET версии 4.8.
Обновление NET Framework 4.6 и более ранних версий для поддержки TLS 1.1 и TLS 1.2. Дополнительные сведения см. в статье о версиях и зависимостях в платформе .NET Framework.
Если вы используете платформа .NET Framework 4.5.1 или 4.5.2 на Windows 8.1, Windows Server 2012 R2 или Windows Server 2012, настоятельно рекомендуется установить последние обновления для системы безопасности для .NET Framework 4.5.1 и 4.5.2, чтобы обеспечить правильное включение TLS 1.2.
Для справки протокол TLS 1.2 был впервые представлен в .Net Framework 4.5.1 и 4.5.2 со следующими накопительными пакетами исправлений:
- Для Windows 8.1 и Server 2012 R2: накопительный пакет исправлений 3099842
- Для Windows Server 2012: накопительный пакет исправлений 3099844
Настройте платформа .NET Framework для поддержки надежного шифрования. Задайте для SchUseStrongCrypto
параметра реестра значение DWORD:00000001
. Это значение отключает шифр потока RC4 и требует перезагрузки. Дополнительные сведения об этом параметре см. в 296038 рекомендаций по безопасности Майкрософт.
Обязательно задайте следующие разделы реестра на любом компьютере, который обменивается данными по сети с системой с поддержкой TLS 1.2. Например, Configuration Manager клиентов, удаленные роли системы сайта, не установленные на сервере сайта, и сам сервер сайта.
Для 32-разрядных приложений, работающих на 32-разрядных ос, и для 64-разрядных приложений, работающих на 64-разрядных ОС, обновите следующие значения подраздела:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v2.0.50727]
"SystemDefaultTlsVersions" = dword:00000001
"SchUseStrongCrypto" = dword:00000001
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319]
"SystemDefaultTlsVersions" = dword:00000001
"SchUseStrongCrypto" = dword:00000001
Для 32-разрядных приложений на 64-разрядных системах измените следующие значения подразделов:
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v2.0.50727]
"SystemDefaultTlsVersions" = dword:00000001
"SchUseStrongCrypto" = dword:00000001
[HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\.NETFramework\v4.0.30319]
"SystemDefaultTlsVersions" = dword:00000001
"SchUseStrongCrypto" = dword:00000001
Примечание
Этот SchUseStrongCrypto
параметр позволяет .NET использовать TLS 1.1 и TLS 1.2. Этот SystemDefaultTlsVersions
параметр позволяет .NET использовать конфигурацию ОС. Дополнительные сведения см. в статье Рекомендации по TLS с платформа .NET Framework.