Implementace zabezpečení přenosové vrstvy 1.2

Tento článek popisuje, jak system Center Operations Manageru povolit využití protokolu TLS (Transport Layer Security) 1.2.

Poznámka:

Operations Manager použije protokol nakonfigurovaný na úrovni operačního systému. Pokud jsou například na úrovni operačního systému povolené protokoly TLS 1.0, TLS 1.1 a TLS 1.2, operations Manager vybere jeden ze tří protokolů v následujícím pořadí:

  1. TLS verze 1.2
  2. TLS verze 1.1
  3. TLS verze 1.0

Zprostředkovatel zabezpečení Schannel pak vybere upřednostňovaný ověřovací protokol, který může klient a server podporovat.

Provedením následujících kroků implementujte protokol TLS verze 1.2 v Operations Manageru:

Poznámka:

Ovladač Microsoft OLE DB 18 pro SQL Server (doporučeno) je podporován v Operations Manageru 2016 UR9 a novějším.

  1. Nainstalujte SQL Server 2012 Native Client 11.0 nebo Microsoft OLE DB Driver (x64) na všechny servery pro správu a server webové konzoly.
  2. Nainstalujte ovladač Microsoft ODBC (x64) na všechny servery pro správu a server webové konzoly.
  3. Nainstalujte požadovanou aktualizaci SQL Serveru, která podporuje protokol TLS 1.2.
  4. Nainstalujte minimálně kumulativní aktualizaci 4 pro SCOM 2016 na všechny komponenty.
  5. Ujistěte se, že vaše servery mají nainstalovanou minimálně .NET 4.6, aby byly kompatibilní s operačním systémem: verze a závislosti rozhraní .NET Framework.
    1. Neinstalujte .NET 4.8, protože došlo k známým problémům s nekompatibilitami SCOM 2016.
  6. Nakonfigurujte Windows tak, aby používal pouze protokol TLS 1.2.
  7. Nakonfigurujte .NET tak, aby ve výchozím nastavení využíval protokol TLS 1.2.
  8. Nakonfigurujte službu Audit Collection Services, pokud je nainstalovaná.
  1. Nainstalujte ovladač Microsoft OLE DB pro SQL verze 18.7.4 na všechny servery pro správu a server webové konzoly.
  2. Nainstalujte ovladač Microsoft ODBC pro SQL verze 17.10.6 na všechny servery pro správu a server webové konzoly.
  3. Nakonfigurujte Windows tak, aby používal pouze protokol TLS 1.2.
  4. Nakonfigurujte .NET tak, aby ve výchozím nastavení využíval protokol TLS 1.2.
  5. Nakonfigurujte službu Audit Collection Services, pokud je nainstalovaná.

Poznámka:

Pokud používáte šifrování připojení SQL Serveru, budete muset místo toho nainstalovat tyto verze ovladačů:

Další informace o konfiguraci šifrování připojení SQL najdete tady: Konfigurace databázového stroje SQL Serveru pro šifrování připojení

Operations Manager generuje certifikáty podepsané svým držitelem SHA1 a SHA2. To je nutné k povolení protokolu TLS 1.2. Pokud se používají certifikáty podepsané certifikační autoritou, ujistěte se, že certifikáty jsou SHA1 nebo SHA2.

Poznámka:

Pokud zásady zabezpečení omezují protokol TLS 1.0 a 1.1, instalace nového serveru pro správu Operations Manageru 2016, serveru brány, webové konzoly a služby Reporting Services selže, protože instalační médium neobsahuje aktualizace pro podporu protokolu TLS 1.2. Jediným způsobem, jak tyto role nainstalovat, je povolením protokolu TLS 1.0 v systému, použitím kumulativní aktualizace 4 a povolením protokolu TLS 1.2 v systému. Toto omezení neplatí pro Operations Manager verze 1801.

Konfigurace operačního systému Windows tak, aby používal pouze protokol TLS 1.2

Pomocí jedné z následujících metod nakonfigurujte Systém Windows tak, aby používal pouze protokol TLS 1.2.

Metoda 1: Ruční úprava registru

Důležité

Dodržujte prosím pečlivě postup uvedený v této části. V případě nesprávné úpravy registru by mohly nastat závažné problémy. Před zahájením úprav vytvořte zálohu registru pro případ, že by nastaly potíže.

Pomocí následujících kroků povolte nebo zakažte všechny protokoly SCHANNEL v celém systému. Doporučujeme povolit protokol TLS 1.2 pro veškerou příchozí komunikaci a odchozí komunikaci.

Poznámka:

Provedení těchto změn registru nemá vliv na použití protokolů Kerberos nebo NTLM.

  1. Přihlaste se k serveru pomocí účtu, který má oprávnění místního správce.

  2. Spusťte Editor registru tak, že vyberete a podržíte Start, zadáte příkaz regedit do textového pole Spustit a vyberete OK.

  3. Vyhledejte následující podklíč registru:

    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols

  4. V části Protokoly vytvořte podklíč pro:

    1. SSL 2.0
    2. SSL 3.0
    3. TLS 1.0
    4. TLS 1.1
    5. TLS 1.2.
  5. Podklíč klienta a serveru vytvořte podklíč verze každého protokolu, který jste vytvořili dříve. Například podklíč protokolu TLS 1.0 by byl

    • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Client
    • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server
  6. Pokud chcete zakázat každý protokol, vytvořte v části Server a Klient následující hodnoty DWORD:

    • Povoleno [Hodnota = 0]
    • DisabledByDefault [Value = 1]
  7. Pokud chcete povolit protokol TLS 1.2, vytvořte následující klíče registru:

    • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client
    • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server:
  8. Pak v části Server a Klient vytvořte následující hodnoty DWORD:

    • Povoleno [Hodnota = 1]
    • DisabledByDefault [Value = 0]
  9. Zavřete Editor registru.

Metoda 2: Automatická úprava registru

Spuštěním následujícího skriptu Windows PowerShellu jako správce automaticky nakonfigurujte operační systém Windows tak, aby používal pouze protokol 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 " "
}

Konfigurace rozhraní .NET Framework pro použití pouze protokolu TLS 1.2

.NET obvykle vyžaduje, aby aplikace definovala, jaký protokol TLS se má použít pro komunikaci, v instanci SCOM ale budeme muset informovat .NET o tom, jaký protokol použít.

Po dokončení konfigurace všech požadavků nástroje Operations Manager proveďte následující kroky na všech serverech pro správu, serveru, který je hostitelem role webové konzoly, a na jakémkoli počítači s Windows, na který je agent nainstalovaný.

Důležité

Dodržujte prosím pečlivě postup uvedený v této části. V případě nesprávné úpravy registru by mohly nastat závažné problémy. Před provedením jakýchkoli úprav zálohujte registr pro případ, že dojde k problémům.

Poznámka:

SCOM spuštěný v operačním systému Windows 2012 potřebuje další změny pro použití protokolu TLS 1.2 přes PROTOKOL HTTP pro monitorování systémů UNIX/LINUX. Aby bylo možné protokol TLS 1.2 povolit jako výchozí protokoly zabezpečení ve WinHTTP ve Windows, je potřeba provést následující změny podle aktualizace, aby bylo možné protokol TLS 1.1 a TLS 1.2 povolit jako výchozí zabezpečené protokoly ve WinHTTP ve Windows.

  1. Nainstalujte KB3140245 na servery pro správu nebo brány ve fondu zdrojů systému UNIX/LINUX.
  2. Zálohujte registry, které jsou upraveny, jak je uvedeno v článku znalostní báze.
  3. Stáhněte a spusťte nástroj Easy Fix na serverech pro správu nebo branách ve fondu zdrojů systému UNIX/LINUX.
  4. Restartujte servery.

Ruční úprava registru

  1. Otevření Editoru registru
  2. Vyhledejte následující podklíč registru: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v2.0.50727
    1. Vytvořte následující páry hodnot DWORD:
      • SchUseStrongCrypto [Hodnota = 1]
      • SystemDefaultTlsVersions [Hodnota = 1]
  3. Vyhledejte následující podklíč registru: HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\.NETFramework\v2.0.50727
    1. Vytvořte následující páry hodnot DWORD:
      • SchUseStrongCrypto [Hodnota = 1]
      • SystemDefaultTlsVersions [Hodnota = 1]
  4. Vyhledejte následující podklíč registru: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319
    1. Vytvořte následující páry hodnot DWORD:
      • SchUseStrongCrypto [Hodnota = 1]
      • SystemDefaultTlsVersions [Hodnota = 1]
  5. Vyhledejte následující podklíč registru: HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\.NETFramework\v4.0.30319
    1. Vytvořte následující páry hodnot DWORD:
      • SchUseStrongCrypto [Hodnota = 1]
      • SystemDefaultTlsVersions [Hodnota = 1]
  6. Restartujte systém, aby se nastavení projevilo.

Automatická úprava registru

Spuštěním následujícího skriptu Prostředí Windows PowerShell v režimu správce automaticky nakonfigurujte rozhraní .NET Framework, aby se zabránilo závislostem protokolu TLS 1.0 zděděným architekturou:

# Tighten up the .NET Framework
$NetRegistryPath1 = "HKLM:\SOFTWARE\WOW6432Node\Microsoft\.NETFramework\v2.0.50727" 
New-ItemProperty -Path $NetRegistryPath1 -Name "SchUseStrongCrypto" -Value "1" -PropertyType DWORD -Force | Out-Null 
New-ItemProperty -Path $NetRegistryPath1 -Name "SystemDefaultTlsVersions" -Value "1" -PropertyType DWORD -Force | Out-Null

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

$NetRegistryPath3 = "HKLM:\SOFTWARE\Microsoft\.NETFramework\v2.0.50727" 
New-ItemProperty -Path $NetRegistryPath3 -Name "SchUseStrongCrypto" -Value "1" -PropertyType DWORD -Force | Out-Null 
New-ItemProperty -Path $NetRegistryPath3 -Name "SystemDefaultTlsVersions" -Value "1" -PropertyType DWORD -Force | Out-Null

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

Další nastavení

Pokud se implementuje pro System Center 2016 – Operations Manager, po instalaci kumulativní aktualizace 4 nezapomeňte importovat sady Management Pack, které jsou součástí této kumulativní aktualizace, umístěné v následujícím adresáři: \Program Files\Microsoft System Center 2016\Operations Manager\Server\Management Pack pro kumulativní aktualizace.

Pokud monitorujete podporovanou verzi linuxového serveru pomocí Operations Manageru, postupujte podle pokynů na příslušném webu pro vaši distribuci a nakonfigurujte protokol TLS 1.2.

Audit Collection Services

V případě služby Audit Collection Services (ACS) musíte provést další změny v registru na serveru kolekce služby ACS. Služba ACS používá dsN k vytvoření připojení k databázi. Musíte aktualizovat nastavení DSN, aby byly funkční pro protokol TLS 1.2.

  1. Přihlaste se k serveru pomocí účtu, který má oprávnění místního správce.

  2. Spusťte Editor registru tak, že vyberete a podržíte Start, zadáte příkaz regedit do textového pole Spustit a vyberete OK.

  3. Vyhledejte následující podklíč ODBC pro OpsMgrAC: HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\OpsMgrAC.

    Poznámka:

    Výchozí název DSN je OpsMgrAC.

  4. V části Podklíč Zdroje dat ODBC vyberte název DSN OpsMgrAC. Obsahuje název ovladače ODBC, který se má použít pro připojení k databázi. Pokud máte nainstalovanou verzi ODBC 11.0, změňte tento název na ovladač ODBC 11 pro SQL Server nebo pokud máte nainstalované rozhraní ODBC 13.0, změňte tento název na ovladač ODBC 13 pro SQL Server.

  5. V podklíči OpsMgrAC aktualizujte ovladač pro nainstalovanou verzi ODBC.

    • Pokud je nainstalována rozhraní ODBC 11.0, změňte položku ovladače na %WINDIR%\system32\msodbcsql11.dll.
    • Pokud je nainstalována rozhraní ODBC 13.0, změňte položku Ovladače na %WINDIR%\system32\msodbcsql13.dll.
    • Pokud je nainstalovaná rozhraní ODBC 17.0, změňte položku Ovladače na %WINDIR%\system32\msodbcsql17.dll.
    • Pokud je nainstalována rozhraní ODBC 18.0, změňte položku Ovladače na %WINDIR%\system32\msodbcsql18.dll.

Soubor registru

Případně vytvořte a uložte následující .reg soubor v Poznámkovém bloku nebo jiném textovém editoru. Pokud chcete spustit uložený soubor .reg , poklikejte na soubor.

  • Pro ODBC 11.0, 13.0, 17.x nebo 18.x. Vytvořte následující soubor ODBC.reg a (nahraďte používanou verzí ODBC):

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

PowerShell

Případně můžete spustit následující příkazy PowerShellu, které tuto změnu automatizují.

  • Pro ROZHRANÍ ODBC 11.0 spusťte následující příkazy PowerShellu:

    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
    
  • Pro ROZHRANÍ ODBC 13.0 spusťte následující příkazy PowerShellu:

    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
    

Audit Collection Services

V případě služby Audit Collection Services (ACS) musíte provést další změny v registru na serveru kolekce služby ACS. Služba ACS používá dsN k vytvoření připojení k databázi. Musíte aktualizovat nastavení DSN, aby byly funkční pro protokol TLS 1.2.

  1. Přihlaste se k serveru pomocí účtu, který má oprávnění místního správce.
  2. Spusťte Editor registru tak, že vyberete a podržíte Start, zadáte příkaz regedit do textového pole Spustit a vyberete OK.
  3. Vyhledejte následující podklíč ODBC pro OpsMgrAC: HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\OpsMgrAC.

Poznámka:

Výchozí název DSN je OpsMgrAC.

  1. V části Podklíč Zdroje dat ODBC vyberte název DSN OpsMgrAC. Obsahuje název ovladače ODBC, který se má použít pro připojení k databázi. Pokud máte nainstalované rozhraní ODBC 17, změňte tento název na ovladač ODBC 17 pro SQL Server.
  2. V podklíči OpsMgrAC aktualizujte ovladač pro nainstalovanou verzi ODBC.
    • Pokud je například nainstalována rozhraní ODBC 17, změňte položku Ovladače na %WINDIR%\system32\msodbcsql17.dll.
    • Zkontrolujte název knihovny DLL pro aktuální verzi nainstalovaného ovladače ODBC, pokud se liší.

Soubor registru

Případně vytvořte a uložte následující .reg soubor v Poznámkovém bloku nebo jiném textovém editoru. Pokud chcete spustit uložený soubor .reg , poklikejte na soubor.

  • Pro ODBC 17 vytvořte následující soubor ODBC 17.reg:

    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

Případně můžete spustit následující příkazy PowerShellu, které tuto změnu automatizují.

  • Pokud používáte jinou verzi ovladače ODBC než 17, nezapomeňte nahradit cestu k souboru dll příslušné verzi.

    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
    

Další kroky