다음을 통해 공유


전송 계층 보안 1.2 구현

이 문서에서는 System Center Operations Manager가 TLS(전송 계층 보안) 1.2를 사용하도록 허용하는 방법을 설명합니다.

참고 항목

Operations Manager는 운영 체제 수준에서 구성된 프로토콜을 사용합니다. 예를 들어 운영 체제 수준에서 TLS 1.0, TLS 1.1, TLS 1.2를 사용하도록 설정한 경우 Operations Manager는 다음 기본 설정 순서로 세 가지 프로토콜 중 하나를 선택합니다.

  1. TLS 버전 1.2
  2. TLS 버전 1.1
  3. TLS 버전 1.0

그다음에 Schannel SSP는 클라이언트와 서버에서 지원할 수 있는 가장 우선하는 인증 프로토콜을 선택합니다.

Operations Manager에서 TLS 프로토콜 버전 1.2를 구현하려면 다음 단계를 수행합니다.

참고 항목

Microsoft OLE DB Driver 18 for SQL Server(권장)는 Operations Manager 2016 UR9 이상에서 지원됩니다.

  1. 모든 관리 서버 및 웹 콘솔 서버에 SQL Server 2012 Native Client 11.0 또는 Microsoft OLE DB 드라이버(x64)를 설치합니다.
  2. 모든 관리 서버 및 웹 콘솔 서버에 Microsoft ODBC Driver(x64)를 설치합니다.
  3. TLS 1.2를 지원하는 필수 SQL Server 업데이트를 설치합니다.
  4. 모든 구성 요소에 SCOM 2016용 업데이트 롤업 4를 설치합니다.
  5. 서버에 OS 와 호환되는 최소 .NET 4.6이 설치되어 있는지 확인합니다. .NET Framework 버전 및 종속성
    1. SCOM 2016 비호환성 관련 알려진 문제가 있으므로 .NET 4.8을 설치하지 마세요.
  6. TLS 1.2만 사용하도록 Windows를 구성합니다.
  7. 기본적으로 TLS 1.2를 활용하도록 .NET을 구성합니다.
  8. 설치된 경우 Audit Collection Services를 구성합니다.
  1. 모든 관리 서버 및 웹 콘솔 서버에 Microsoft OLE DB Driver for SQL 버전 18.7.4를 설치합니다.
  2. 모든 관리 서버 및 웹 콘솔 서버에 Microsoft ODBC Driver for SQL 버전 17.10.6을 설치합니다.
  3. TLS 1.2만 사용하도록 Windows를 구성합니다.
  4. 기본적으로 TLS 1.2를 활용하도록 .NET을 구성합니다.
  5. 설치된 경우 Audit Collection Services를 구성합니다.

참고 항목

SQL Server 연결 암호화를 활용하는 경우 다음 드라이버 버전을 대신 설치해야 합니다.

SQL 연결 암호화 구성에 대한 자세한 내용은 다음에서 찾을 수 있습니다. 연결 암호화를 위한 SQL Server 데이터베이스 엔진 구성

Operations Manager는 SHA1 및 SHA2 자체 서명된 인증서를 생성합니다. TLS 1.2를 사용하도록 설정하려면 이 작업이 필요합니다. CA 서명된 인증서를 사용하는 경우 인증서가 SHA1 또는 SHA2인지 확인합니다.

참고 항목

보안 정책이 TLS 1.0 및 1.1을 제한하는 경우 설치 미디어에 TLS 1.2를 지원하는 업데이트가 포함되지 않으므로 새 Operations Manager 2016 관리 서버, 게이트웨이 서버, 웹 콘솔 및 Reporting Services 역할을 설치하지 못합니다. 이러한 역할을 설치할 수 있는 유일한 방법은 시스템에서 TLS 1.0을 사용하도록 설정하고 업데이트 롤업 4를 적용한 다음 시스템에서 TLS 1.2를 사용하도록 설정하는 것입니다. 이 제한은 Operations Manager 버전 1801에는 적용되지 않습니다.

TLS 1.2 프로토콜만 사용하도록 Windows 운영 체제 구성

다음 방법 중 하나를 사용하여 TLS 1.2 프로토콜만 사용하도록 Windows를 구성합니다.

방법 1: 레지스트리 수동 수정

Important

주의를 기울여 이 절의 단계를 수행하십시오. 레지스트리를 잘못 수정할 경우 심각한 문제가 발생할 수 있습니다. 수정하기 전에, 문제가 발생할 경우를 대비하여 복원을 위해 레지스트리를 백업해 두세요.

시스템 전체에서 모든 SCHANNEL 프로토콜을 사용하거나 사용하지 않도록 설정하려면 다음 단계를 사용합니다. 모든 들어오는 통신 및 나가는 통신에 TLS 1.2 프로토콜을 사용하도록 설정하는 것이 좋습니다.

참고 항목

이러한 레지스트리 변경은 Kerberos 또는 NTLM 프로토콜의 사용에 영향을 주지 않습니다.

  1. 로컬 관리자 자격 증명이 있는 계정을 사용하여 서버에 로그인합니다.

  2. 시작을 선택하고 들고 레지스트리 편집기를 시작하고, 실행 텍스트 상자에 regedit입력하고, 확인을 선택합니다.

  3. 다음 레지스트리 하위 키를 찾습니다.

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

  4. 다음의 프로토콜 아래에 하위 키를 만듭니다.

    1. SSL 2.0
    2. SSL 3.0
    3. TLS 1.0
    4. TLS 1.1
    5. TLS 1.2.
  5. 이전에 만든 각 프로토콜 버전 하위 키 아래에 클라이언트서버 하위 키를 만듭니다. 예를 들어 TLS 1.0의 하위 키는

    • 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. 각 프로토콜을 사용하지 않도록 설정하려면 서버클라이언트에서 다음 DWORD 값을 만듭니다.

    • 사용 [값 = 0]
    • DisabledByDefault [값 = 1]
  7. TLS 1.2 프로토콜을 사용하도록 설정하려면 다음 레지스트리 키를 만듭니다.

    • 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. 그런 다음 서버클라이언트에서 다음 DWORD 값을 만듭니다.

    • 사용 [값 = 1]
    • DisabledByDefault [값 = 0]
  9. 레지스트리 편집기 닫기

방법 2: 레지스트리 자동 수정

다음 Windows PowerShell 스크립트를 관리자 권한으로 실행하여 TLS 1.2 프로토콜만 사용하도록 Windows 운영 체제를 자동으로 구성합니다.

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

TLS 1.2만 사용하도록 .NET Framework 구성

.NET에서는 일반적으로 애플리케이션이 통신에 사용할 TLS 프로토콜을 정의해야 하지만 SCOM 인스턴스에서는 .NET 시스템 전체에서 사용할 프로토콜을 알려야 합니다.

Operations Manager에 대한 모든 필수 구성 요소 구성을 완료한 후 모든 관리 서버, 웹 콘솔 역할을 호스트하는 서버 및 에이전트가 설치된 모든 Windows 컴퓨터에서 다음 단계를 수행합니다.

Important

주의를 기울여 이 절의 단계를 수행하십시오. 레지스트리를 잘못 수정할 경우 심각한 문제가 발생할 수 있습니다. 수정하기 전에 문제가 발생할 경우 복원을 위해 레지스트리를 백업합니다.

참고 항목

Windows OS 2012에서 실행되는 SCOM은 UNIX/LINUX 모니터링을 위해 HTTP를 통해 TLS 1.2를 사용하려면 추가 변경이 필요합니다. Windows에서 WinHTTP에서 TLS 1.2를 기본 보안 프로토콜로 사용하도록 설정하려면 Windows의 WinHTTP에서 TLS 1.1 및 TLS 1.2를 기본 보안 프로토콜로 사용하도록 설정하려면 업데이트에 따라 다음과 같이 변경해야 합니다.

  1. UNIX/LINUX 리소스 풀의 관리 서버/게이트웨이 서버에 KB3140245 설치합니다.
  2. KB 문서에 설명된 대로 수정된 레지스트리를 백업합니다.
  3. UNIX/LINUX 리소스 풀의 관리 서버/게이트웨이에서 Easy Fix 도구를 다운로드하고 실행합니다.
  4. 서버를 다시 부팅합니다.

레지스트리 수동 수정

  1. 레지스트리 편집기를 엽니다
  2. 다음 레지스트리 하위 키를 찾습니다. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v2.0.50727
    1. 다음 DWORD 값 쌍을 만듭니다.
      • SchUseStrongCrypto [값 = 1]
      • SystemDefaultTlsVersions [값 = 1]
  3. 다음 레지스트리 하위 키를 찾습니다. HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\.NETFramework\v2.0.50727
    1. 다음 DWORD 값 쌍을 만듭니다.
      • SchUseStrongCrypto [값 = 1]
      • SystemDefaultTlsVersions [값 = 1]
  4. 다음 레지스트리 하위 키를 찾습니다. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319
    1. 다음 DWORD 값 쌍을 만듭니다.
      • SchUseStrongCrypto [값 = 1]
      • SystemDefaultTlsVersions [값 = 1]
  5. 다음 레지스트리 하위 키를 찾습니다. HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\.NETFramework\v4.0.30319
    1. 다음 DWORD 값 쌍을 만듭니다.
      • SchUseStrongCrypto [값 = 1]
      • SystemDefaultTlsVersions [값 = 1]
  6. 시스템을 다시 시작하여 설정을 적용합니다.

레지스트리 자동 수정

관리자 모드에서 다음 Windows PowerShell 스크립트를 실행하여 프레임워크 상속 TLS 1.0 종속성을 방지하도록 .NET Framework를 자동으로 구성합니다.

# 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

추가 설정

System Center 2016 - Operations Manager에 대해 구현 중인 경우 업데이트 롤업 4를 적용한 후 \Program Files\Microsoft System Center 2016\Operations Manager\Server\Management Packs for Update Rollups 디렉터리에 있는 이 롤업에 포함된 관리 팩을 가져와야 합니다.

Operations Manager와 함께 지원되는 Linux 서버 버전을 모니터링하는 경우 적절한 웹사이트의 지시를 따라 배포판이 TLS 1.2를 구성하게 합니다.

Audit Collection Services

ACS(Audit Collection Services)의 경우 ACS 수집기 서버의 레지스트리를 추가로 변경해야 합니다. ACS는 DSN을 사용하여 데이터베이스에 연결합니다. TLS 1.2에서 작동하도록 DSN 설정을 업데이트해야 합니다.

  1. 로컬 관리자 자격 증명이 있는 계정을 사용하여 서버에 로그인합니다.

  2. 시작을 선택하고 들고 레지스트리 편집기를 시작하고, 실행 텍스트 상자에 regedit입력하고, 확인을 선택합니다.

  3. OpsMgrAC HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\OpsMgrAC에 대한 다음 ODBC 하위 키를 찾습니다.

    참고 항목

    DSN의 기본 이름은 OpsMgrAC입니다.

  4. ODBC 데이터 원본 하위 키에서 DSN 이름 OpsMgrAC를 선택합니다. 여기에는 데이터베이스 연결에 사용할 ODBC 드라이버의 이름이 포함됩니다. ODBC 11.0이 설치된 경우 이 이름을 SQL Server용 ODBC Driver 11로 변경하거나 ODBC 13.0이 설치된 경우 이 이름을 SQL Server용 ODBC Driver 13으로 변경합니다.

  5. OpsMgrAC 하위 키에서 설치된 ODBC 버전의 드라이버를 업데이트합니다.

    • ODBC 11.0이 설치된 경우 드라이버 항목을 %WINDIR%\system32\msodbcsql11.dll.로 변경합니다.
    • ODBC 13.0이 설치된 경우 드라이버 항목을 .로 변경합니다 %WINDIR%\system32\msodbcsql13.dll.
    • ODBC 17.0이 설치된 경우 드라이버 항목을 .로 변경합니다 %WINDIR%\system32\msodbcsql17.dll.
    • ODBC 18.0이 설치된 경우 드라이버 항목을 .로 변경합니다 %WINDIR%\system32\msodbcsql18.dll.

레지스트리 파일

또는 메모장 또는 다른 텍스트 편집기에서 다음 .reg 파일을 만들고 저장합니다. 저장된 .reg 파일을 실행하려면 파일을 두 번 클릭합니다.

  • ODBC 11.0, 13.0, 17.x 또는 18.x의 경우 다음 파일 ODBC.reg 만들고(사용 중인 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

또는 다음 PowerShell 명령을 실행하여 변경을 자동화할 수 있습니다.

  • ODBC 11.0의 경우 다음 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
    
  • ODBC 13.0의 경우 다음 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
    

Audit Collection Services

ACS(Audit Collection Services)의 경우 ACS 수집기 서버의 레지스트리를 추가로 변경해야 합니다. ACS는 DSN을 사용하여 데이터베이스에 연결합니다. TLS 1.2에서 작동하도록 DSN 설정을 업데이트해야 합니다.

  1. 로컬 관리자 자격 증명이 있는 계정을 사용하여 서버에 로그인합니다.
  2. 시작을 선택하고 들고 레지스트리 편집기를 시작하고, 실행 텍스트 상자에 regedit입력하고, 확인을 선택합니다.
  3. OpsMgrAC HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\OpsMgrAC에 대한 다음 ODBC 하위 키를 찾습니다.

참고 항목

DSN의 기본 이름은 OpsMgrAC입니다.

  1. ODBC 데이터 원본 하위 키에서 DSN 이름 OpsMgrAC를 선택합니다. 여기에는 데이터베이스 연결에 사용할 ODBC 드라이버의 이름이 포함됩니다. ODBC 17이 설치되어 있는 경우 이 이름을 SQL ServerODBC Driver 17로 변경합니다.
  2. OpsMgrAC 하위 키에서 설치된 ODBC 버전의 드라이버를 업데이트합니다.
    • 예를 들어 ODBC 17이 설치된 경우 드라이버 항목을 %WINDIR%\system32\msodbcsql17.dll.로 변경합니다.
    • 다른 경우 설치된 ODBC 드라이버의 현재 버전에 대한 DLL 이름을 확인합니다.

레지스트리 파일

또는 메모장 또는 다른 텍스트 편집기에서 다음 .reg 파일을 만들고 저장합니다. 저장된 .reg 파일을 실행하려면 파일을 두 번 클릭합니다.

  • ODBC 17의 경우 다음 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

또는 다음 PowerShell 명령을 실행하여 변경을 자동화할 수 있습니다.

  • 17 이외의 ODBC 드라이버 버전을 사용하는 경우 dll 파일 경로를 적절한 버전으로 바꿔야 합니다.

    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
    

다음 단계

  • 사용된 포트의 전체 목록, 통신 방향 및 포트를 구성할 수 있는 경우 Operations Manager에 대한 방화벽 구성을 참조 하세요.

  • 관리 그룹의 구성 요소 간 데이터를 보호하는 방법에 대한 전반적인 검토는 Operations Manager의 인증 및 데이터 암호화를 참조하세요.