Cómo implementar la Seguridad de la capa de transporte 1.2

Importante

Esta versión de Operations Manager ha llegado al final del soporte técnico. Se recomienda actualizar a Operations Manager 2022.

En este artículo se describe cómo habilitar el protocolo de seguridad de la capa de transporte (TLS) versión 1.2 para un grupo de administración de System Center Operations Manager.

Nota

Operations Manager usará el protocolo configurado en el nivel de sistema operativo. Por ejemplo, si TLS 1.0, TLS 1.1 y TLS 1.2 están habilitados en el nivel de sistema operativo, Operations Manager seleccionará uno de los tres protocolos en el orden de preferencia siguiente:

  1. TLS versión 1.2
  2. TLS versión 1.1
  3. TLS versión 1.0

El SSP de SChannel seleccionará entonces el protocolo de autenticación preferido que tanto el cliente como el servidor admitan.

Siga los pasos que hay a continuación para habilitar la versión 1.2 del protocolo TLS:

Nota

Microsoft OLE DB Driver 18 para SQL Server (recomendado) es compatible con Operations Manager 2016 UR9 y versiones posteriores.

  1. Instale SQL Server 2012 Native Client 11.0 o Microsoft OLE DB Driver 18 para SQL Server en todos los servidores de administración y en el servidor de consola web.
  2. Instale .NET Framework 4.6 en todos los servidores de administración, los servidores de puerta de enlace, el servidor de consola web y el servidor de SQL Server que hospeda las bases de datos de Operations Manager y el rol del servidor de informes.
  3. Instale la actualización necesaria de SQL Server que admita TLS 1.2.
  4. Instale ODBC 11.0 u ODBC 13.0 en todos los servidores de administración.
  5. Para System Center 2016 - Operations Manager, instale el paquete acumulativo de actualizaciones 4 o una versión posterior.
  6. Configure Windows para que solo use TLS 1.2.
  7. Configure Operations Manager para que solo use TLS 1.2.
  1. Instale Microsoft OLE DB Driver versión 18.2 a 18.6.7 o posterior en todos los servidores de administración y el servidor de consola web.
  2. Instale .NET Framework 4.6 en todos los servidores de administración, los servidores de puerta de enlace, el servidor de consola web y el servidor de SQL Server que hospeda las bases de datos de Operations Manager y el rol del servidor de informes.
  3. Instale la actualización necesaria de SQL Server que admita TLS 1.2.
  4. Instale odbc Driver versión 17.3 a 17.10.5 o posterior en todos los servidores de administración.
  5. Configure Windows para que solo use TLS 1.2.
  6. Configure Operations Manager para que solo use TLS 1.2.

Operations Manager genera certificados autofirmados SHA1 y SHA2. Esto es necesario para habilitar TLS 1.2. Si se usan certificados firmados por ca, asegúrese de que los certificados sean SHA1 o SHA2.

Nota

Si las directivas de seguridad restringen TLS 1.0 y 1.1, se producirá un error al instalar un nuevo servidor de administración de Operations Manager 2016, servidor de puerta de enlace, consola web y rol de Reporting Services porque el medio de instalación no incluye las actualizaciones para admitir TLS 1.2. La única manera de poder instalar estos roles consiste en habilitar TLS 1.0 en el sistema, aplicar el Paquete acumulativo de actualizaciones 4 y, después, habilitar TLS 1.2 en el sistema. Esta limitación no se aplica a la versión 1801 de Operations Manager.

Configuración del sistema operativo Windows para usar solo el protocolo TLS 1.2

Use uno de los siguientes métodos para configurar Windows para que solo use el protocolo TLS 1.2.

Método 1: Modificación manual del Registro

Importante

Sigue meticulosamente los pasos que se describen en esta sección. Pueden producirse problemas graves si modifica el Registro de manera incorrecta. Antes de modificarlo, cree una copia de seguridad del Registro para restaurarlo en caso de que haya algún problema.

Siga estos pasos para habilitar o deshabilitar los protocolos SCHANNEL en todo el sistema. Se recomienda habilitar el protocolo TLS 1.2 para todas las comunicaciones entrantes y salientes.

Nota

Realizar estos cambios en el registro no afecta al uso de protocolos Kerberos o NTLM.

  1. Inicie sesión en el servidor con una cuenta que tenga credenciales administrativas locales.

  2. Inicie el registro Editor seleccionando y manteniendo inicio, escriba regedit en el cuadro de texto Ejecutar y seleccione Aceptar.

  3. Busque la siguiente subclave del Registro: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols.

  4. Cree una subclave en Protocols para SSL 2.0, SSL 3.0, TLS 1.0, TLS 1.1 y TLS 1.2.

  5. Cree una subclave Client y Server en cada subclave de la versión de protocolo que ha creado anteriormente. Por ejemplo, la subclave para TLS 1.0 sería HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Client y HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server.

  6. Para deshabilitar cada protocolo, cree los siguientes valores DWORD en Server y Client:

    • Enabled [Valor = 0]
    • DisabledByDefault [Valor = 1]
  7. Para habilitar el protocolo TLS 1.2, cree los siguientes valores DWORD en HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client y HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server:

    • Enabled [Value = 1]
    • DisabledByDefault [Value = 0]
  8. Cierre el editor del registro.

Método 2: Modificación automática del Registro

Ejecute el siguiente script de Windows PowerShell como administrador para configurar automáticamente el sistema operativo Windows para que use solo el protocolo TLS 1.2:

$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 " "
	}
}

Configuración de Operations Manager para que solo use TLS 1.2

Después de completar la configuración de todos los requisitos previos de Operations Manager, siga estos pasos en todos los servidores de administración, el servidor que hospeda el rol de la consola web y cualquier servidor de Windows en que esté instalado el agente.

Importante

Sigue meticulosamente los pasos que se describen en esta sección. Pueden producirse problemas graves si modifica el Registro de manera incorrecta. Antes de modificar nada, cree una copia de seguridad del Registro para restaurarlo en caso de que se produzca algún problema.

Nota

SCOM 2012 R2 que se ejecuta en SO Windows 2012 requiere cambios adicionales para usar TLS 1.2 mediante HTTP para la supervisión en UNIX/LINUX. Para habilitar TLS 1.2 como protocolos de seguridad predeterminados en WinHTTP de Windows, se deben realizar los siguientes cambios según Actualizar para habilitar TLS 1.1 y TLS 1.2 como protocolos seguros predeterminados en WinHTTP en Windows.

  1. Instale KB3140245 en los servidores de administración o de puerta de enlace en el grupo de recursos de UNIX/LINUX.
  2. Realice una copia de seguridad de los registros modificados como se mencionó en el artículo de KB.
  3. Descargue y ejecute la herramienta Easy Fix en los servidores de administración o de puerta de enlace del grupo de recursos de UNIX/LINUX.
  4. Reinicie los servidores.

Modificación manual del Registro

  1. Inicie sesión en el servidor con una cuenta que tenga credenciales administrativas locales.
  2. Inicie el registro Editor seleccionando y manteniendo inicio, escriba regedit en el cuadro de texto Ejecutar y, a continuación, seleccione Aceptar.
  3. Busque la siguiente subclave del Registro: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319.
  4. Cree el valor DWORD SchUseStrongCrypto bajo esta subclave con un valor de 1.
  5. Busque la siguiente subclave del Registro: HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\.NETFramework\v4.0.30319.
  6. Cree el valor DWORD SchUseStrongCrypto bajo esta subclave con un valor de 1.
  7. Reinicie el sistema para que la configuración surta efecto.

Modificación automática del Registro

Ejecute el siguiente script de Windows PowerShell en modo de administrador para configurar automáticamente Operations Manager para que use solo el protocolo TLS 1.2:

# 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

Configuración adicional

Si se implementa para System Center 2016 Operations Manager, después de aplicar el paquete acumulativo de actualizaciones 4, asegúrese de importar los módulos de administración incluidos en este paquete acumulativo ubicado en el siguiente directorio: \Archivos de programa\Microsoft System Center 2016\Operations Manager\Server\Management Packs para paquetes acumulativos de actualizaciones.

Si va a supervisar una versión compatible del servidor Linux con Operations Manager, siga las instrucciones que aparecen en el sitio web correspondiente de su distribución para configurar TLS 1.2.

Servicios de recopilación de auditorías

Para los servicios de recopilación de auditorías (ACS), debe realizar cambios adicionales en el Registro del servidor del recopilador de ACS. ACS usa el DSN para realizar las conexiones con la base de datos. Debe actualizar la configuración de DSN para que funcione con TLS 1.2.

  1. Inicie sesión en el servidor con una cuenta que tenga credenciales administrativas locales.

  2. Inicie el registro Editor seleccionando y manteniendo inicio, escriba regedit en el cuadro de texto Ejecutar y seleccione Aceptar.

  3. Busque la siguiente subclave ODBC para OpsMgrAC: HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\OpsMgrAC.

    Nota

    El nombre predeterminado de DSN es OpsMgrAC.

  4. En la subclave ODBC Data Sources, seleccione el nombre DSN OpsMgrAC. Contiene el nombre del controlador ODBC que se va a usar para la conexión de base de datos. Si tiene ODBC 11.0 instalado, cambie el nombre por Controlador ODBC 11 for SQL Server o, si tiene ODBC 13.0 instalado, cambie el nombre por Controlador ODBC 13 for SQL Server.

  5. En la subclave OpsMgrAC , actualice el controlador para la versión odbc instalada.

    • Si ODBC 11.0 está instalado, cambie la entrada Controlador a %WINDIR%\system32\msodbcsql11.dll.
    • Si ODBC 13.0 está instalado, cambie la entrada Controlador a %WINDIR%\system32\msodbcsql13.dll.

    Archivo del Registro

    Como alternativa, cree y guarde el siguiente archivo .reg en el Bloc de notas u otro editor de texto. Para ejecutar el archivo .reg guardado, haga doble clic en el archivo.

    • Para ODBC 11.0, cree el siguiente archivo de 11.reg ODBC:

      Windows Registry Editor Version 5.00
      
      [HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\ODBC Data Sources]
      "OpsMgrAC"="ODBC Driver 11 for SQL Server"
      
      [HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\OpsMgrAC]
      "Driver"="%WINDIR%\system32\msodbcsql11.dll"
      
    • Para ODBC 13.0, cree el siguiente archivo de 13.reg ODBC:

      Windows Registry Editor Version 5.00
      
      [HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\ODBC Data Sources]
      "OpsMgrAC"="ODBC Driver 13 for SQL Server"
      
      [HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\OpsMgrAC]
      "Driver"="%WINDIR%\system32\msodbcsql13.dll"
      

    PowerShell

    Como alternativa, puede ejecutar los siguientes comandos de PowerShell para automatizar el cambio.

    • Para ODBC 11.0, ejecute los siguientes comandos de PowerShell:

      New-ItemProperty -Path "HKLM:\SOFTWARE\ODBC\ODBC.INI\OpsMgrAC" -Name "Driver" -Value "%WINDIR%\system32\msodbcsql11.dll" -PropertyType STRING -Force | Out-Null
      New-ItemProperty -Path "HKLM:\SOFTWARE\ODBC\ODBC.INI\ODBC Data Sources" -Name "OpsMgrAC" -Value "ODBC Driver 11 for SQL Server" -PropertyType STRING -Force | Out-Null
      
    • Para ODBC 13.0, ejecute los siguientes comandos de PowerShell:

      New-ItemProperty -Path "HKLM:\SOFTWARE\ODBC\ODBC.INI\OpsMgrAC" -Name "Driver" -Value "%WINDIR%\system32\msodbcsql13.dll" -PropertyType STRING -Force | Out-Null
      New-ItemProperty -Path "HKLM:\SOFTWARE\ODBC\ODBC.INI\ODBC Data Sources" -Name "OpsMgrAC" -Value "ODBC Driver 13 for SQL Server" -PropertyType STRING -Force | Out-Null
      

Servicios de recopilación de auditorías

Para los servicios de recopilación de auditorías (ACS), debe realizar cambios adicionales en el Registro del servidor del recopilador de ACS. ACS usa el DSN para realizar las conexiones con la base de datos. Debe actualizar la configuración de DSN para que funcione con TLS 1.2.

  1. Inicie sesión en el servidor con una cuenta que tenga credenciales administrativas locales.

  2. Inicie el registro Editor seleccionando y manteniendo inicio, escriba regedit en el cuadro de texto Ejecutar y seleccione Aceptar.

  3. Busque la siguiente subclave ODBC para OpsMgrAC: HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\OpsMgrAC.

    Nota

    El nombre predeterminado de DSN es OpsMgrAC.

  4. En la subclave ODBC Data Sources, seleccione el nombre DSN OpsMgrAC. Contiene el nombre del controlador ODBC que se va a usar para la conexión de base de datos. Si tiene ODBC 17 instalado, cambie este nombre a ODBC Driver 17 para SQL Server.

  5. En la subclave OpsMgrAC , actualice el controlador para la versión odbc instalada.

    • Si ODBC 17 está instalado, cambie la entrada Driver a %WINDIR%\system32\msodbcsql17.dll.

    Archivo del Registro

    Como alternativa, cree y guarde el siguiente archivo .reg en el Bloc de notas u otro editor de texto. Para ejecutar el archivo .reg guardado, haga doble clic en el archivo.

    • Para ODBC 17, cree el siguiente archivo de 17.reg ODBC:

      Windows Registry Editor Version 5.00
      
      [HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\ODBC Data Sources]
      "OpsMgrAC"="ODBC Driver 17 for SQL Server"
      
      [HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\OpsMgrAC]
      "Driver"="%WINDIR%\system32\msodbcsql17.dll"
      

    PowerShell

    Como alternativa, puede ejecutar los siguientes comandos de PowerShell para automatizar el cambio.

    • Para ODBC 17, ejecute los siguientes comandos de PowerShell:

      New-ItemProperty -Path "HKLM:\SOFTWARE\ODBC\ODBC.INI\OpsMgrAC" -Name "Driver" -Value "%WINDIR%\system32\msodbcsql7.dll" -PropertyType STRING -Force | Out-Null
      New-ItemProperty -Path "HKLM:\SOFTWARE\ODBC\ODBC.INI\ODBC Data Sources" -Name "OpsMgrAC" -Value "ODBC Driver 17 for SQL Server" -PropertyType STRING -Force | Out-Null
      

Pasos siguientes