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


Настройка TLS для VMM

В этой статье описывается настройка протокола TLS версии 1.2 с сервером System Center — диспетчер виртуальных машин (VMM).

Примечание.

диспетчер виртуальных машин будет использовать протокол, настроенный на уровне операционной системы. Например, если протокол TLS 1.0, TLS 1.1 и TLS 1.2 включены на уровне операционной системы, то диспетчер виртуальных машин выбрать один из трех протоколов в следующем порядке предпочтения:

  1. TLS версии 1.2;
  2. TLS версии 1.1;
  3. TLS версии 1.0

Затем Schannel SSP выберет наиболее подходящий протокол проверки подлинности, который может поддерживать и клиент, и сервер.

Перед началом работы

  • Исправления безопасности должны быть актуальны на сервере VMM и сервере под управлением базы данных VMM.
  • Сервер VMM должен работать под управлением .NET версии 4.6. Следуйте этим инструкциям , чтобы определить, какая версия .NET установлена.
  • Для работы с TLS 1.2 компоненты System Center создают самозаверяющие сертификаты SHA1 или SHA2. Если используются СЕРТИФИКАТЫ SSL из центра сертификации (ЦС), они должны использовать SHA1 или SHA2.

Установка обновления SQL Server для поддержки TLS 1.2

  1. Откройте 3135244 базы знаний.
  2. Скачайте и установите обновление для версии SQL Server.
    • Это обновление не требуется, если вы используете SQL Server 2016.
    • SQL Server 2008 R2 не поддерживает TLS 1.2.

Настройка сервера VMM для использования TLS 1.2

Отключите все протоколы SCHANNEL, кроме TLS 1.2.

Изменение реестра вручную

  1. Откройте редактор реестра и перейдите к HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols.
  2. Щелкните правой кнопкой мыши протокол, выберите "Создать>ключ". Введите клавишу и нажмите клавишу ВВОД. Выполните следующую процедуру, чтобы создать следующие ключи:
    • SSL3
    • TLS 1.0
    • TLS 1.1
    • TLS 1.2
  3. После создания этих ключей необходимо создать ключи клиента и сервера под ними.
    • Для SSL3 выберите новый>ключ. Введите клиент и нажмите клавишу ВВОД. Снова для SSL3 нажмите кнопку "Создать>ключ". Затем введите сервер и нажмите клавишу ВВОД.
    • Повторите действие, чтобы создать ключи клиента и сервера в TLS 1.0, TLS 1.1 и TLS 1.2.
  4. После создания разделов Client и Server необходимо создать в них значения DWORD для включения и отключения протоколов. Сделайте следующее:
    • Включите протокол TLS 1.2. Для этого в TLS 1.2 в разделе "Ключ клиента " создайте значение DWORD DisabledByDefault и задайте значение 0. Теперь создайте значение DWORD Включено и задайте значение 1. Создайте те же значения DWORD под ключом сервера .
    • Теперь отключите другие протоколы. Для этого в SSL3 TLS 1.0 и TLS 1.1 под ключом клиента создайте значение DWORD DisabledByDefault и задайте значение 1. Теперь создайте значение DWORD Включено и задайте значение 0. Создайте те же значения DWORD под ключом сервера .

Изменение реестра с помощью скрипта PowerShell

Вместо изменения значений реестра вручную можно использовать следующий скрипт PowerShell.

$ProtocolList       = @("SSL 2.0", "SSL 3.0", "TLS 1.0", "TLS 1.1", "TLS 1.2")
$ProtocolSubKeyList = @("Client", "Server")
$DisabledByDefault  = "DisabledByDefault"
$registryPath       = "HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\"

foreach ($Protocol in $ProtocolList)
{
	foreach ($key in $ProtocolSubKeyList)
	{
		$currentRegPath = $registryPath + $Protocol + "\" + $key
		Write-Output "Current Registry Path: `"$currentRegPath`""

		if (!(Test-Path $currentRegPath))
		{
			Write-Output " `'$key`' not found: Creating new Registry Key"
			New-Item -Path $currentRegPath -Force | out-Null
		}
		if ($Protocol -eq "TLS 1.2")
		{
			Write-Output " Enabling - TLS 1.2"
			New-ItemProperty -Path $currentRegPath -Name $DisabledByDefault -Value "0" -PropertyType DWORD -Force | Out-Null
			New-ItemProperty -Path $currentRegPath -Name 'Enabled' -Value "1" -PropertyType DWORD -Force | Out-Null
		}
		else
		{
			Write-Output " Disabling - $Protocol"
			New-ItemProperty -Path $currentRegPath -Name $DisabledByDefault -Value "1" -PropertyType DWORD -Force | Out-Null
			New-ItemProperty -Path $currentRegPath -Name 'Enabled' -Value "0" -PropertyType DWORD -Force | Out-Null
		}
		Write-Output " "
	}
}

Exit 0

Настройка VMM для использования TLS 1.2

  1. Откройте редактор реестра на сервере VMM. Перейдите к HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\. NetFramework\v4.0.30319.
  2. Создайте значение DWORD SchUseStrongCrypto и задайте значение 1.
  3. Теперь перейдите к разделу HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft
    . NetFramework\v4.0.30319
    .
  4. В этом расположении создайте то же значение DWORD SchUseStrongCrypto и задайте значение 1.
  5. Перезапустите сервер, чтобы параметры вступили в силу.

Изменение реестра с помощью скрипта PowerShell

Параметры реестра можно изменить с помощью следующего скрипта PowerShell.

# Tighten up the .NET Framework
$NetRegistryPath = "HKLM:\SOFTWARE\Microsoft\.NETFramework\v4.0.30319"
New-ItemProperty -Path $NetRegistryPath -Name "SchUseStrongCrypto" -Value "1" -PropertyType DWORD -Force | Out-Null

$NetRegistryPath = "HKLM:\SOFTWARE\WOW6432Node\Microsoft\.NETFramework\v4.0.30319"
New-ItemProperty -Path $NetRegistryPath -Name "SchUseStrongCrypto" -Value "1" -PropertyType DWORD -Force | Out-Null

Следующие шаги

Дополнительные сведения о протоколе TLS 1.2.