NetWorker: Windows 호스트에서 NMC 서버 설치 실패 "인증 서버의 호스트 및/또는 포트를 확인할 수 없음"
概要: Windows 호스트에서 NMC(NetWorker Management Console) 업그레이드 또는 설치가 실패합니다. 설치 즉시 "인증 서버의 호스트 이름 및/또는 포트를 확인할 수 없습니다"라는 메시지가 반환됩니다.
現象
- NMC(NetWorker Management Console) 서버는 Windows 플랫폼에 설치됩니다.
- NMC 소프트웨어를 19.13.x(또는 그 이상)로 설치하거나 업그레이드할 때 다음 오류가 표시됩니다.
- NMC 서버는 인증 서버 포트(9090)를 확인하고 TCP에 연결할 수 있습니다. Windows PowerShell에서 다음을 실행합니다.
tnc AUTHC_SERVER_HOSTNAME -p 9090 - 다음 PowerShell 명령은 SSPI 오류를 반환합니다.
$server = "AUTHC_SERVER_HOSTNAME" $port = 9090 $tcp = [System.Net.Sockets.TcpClient]::new() $tcp.Connect($server, $port) $ssl = [System.Net.Security.SslStream]::new( $tcp.GetStream(), $false, { param($sender,$cert,$chain,$errors) $true } ) try { $ssl.AuthenticateAsClient($server) "=== Protocol ===" $ssl.SslProtocol "=== Cipher ===" "$($ssl.CipherAlgorithm) ($($ssl.CipherStrength)-bit)" "=== Certificate Chain (PEM) ===" # Build the chain from the remote leaf certificate $remoteCert = [System.Security.Cryptography.X509Certificates.X509Certificate2]::new($ssl.RemoteCertificate) $xchain = [System.Security.Cryptography.X509Certificates.X509Chain]::new() $null = $xchain.Build($remoteCert) $i = 0 foreach ($elem in $xchain.ChainElements) { $i++ $c = $elem.Certificate "----- Certificate $i -----" "Subject : $($c.Subject)" "Issuer : $($c.Issuer)" "NotBefore: $($c.NotBefore)" "NotAfter : $($c.NotAfter)" "" } } finally { $ssl.Dispose() $tcp.Dispose() }예:
- NetWorker Server의 웹 브라우저에서 다음 URL에 액세스하면 TLS 문제가 보고됩니다.
https://NETWORKER_SERVER_HOSTNAME:9090/nwrestapi/v3/global
原因
요약:
NetWorker AuthC 서비스와 Windows Server 호스트 간에 TLS 암호 그룹 불일치가 발생합니다. NetWorker 19.13.x AuthC가 최신 버전만 허용하도록 구성되었습니다. TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256 암호 모음. Windows Server 호스트가 이러한 암호 그룹에 대한 지원을 보급하지 않았기 때문에 TLS 협상에 사용할 수 있는 상호 지원되는 암호 그룹이 없습니다. 따라서 TLS 핸드셰이크가 실패하고 AuthC 서비스에 대한 연결을 설정할 수 없습니다.
업그레이드 시나리오에서 이전 NetWorker 버전에서는 운영 체제에서 보급한 암호 그룹에 부합하는 추가적인 CBC 기반 또는 RSA 기반 암호 그룹을 허용했을 수 있습니다. NetWorker 19.13.x로 업그레이드한 후 더 제한적인 AuthC 암호 구성으로 인해 암호 그룹이 호환되지 않는 문제가 발생했습니다.
검증 단계:
운영 체제에서 보급한 암호 그룹을 검증하려면 NetWorker AuthC 서버의 관리자 권한 PowerShell 프롬프트에서 다음 명령을 실행합니다. Get-TlsCipherSuite
의 출력을 비교합니다. Get-TlsCipherSuite AUTHC 서버가 있는 명령 C:\Program Files\EMC NetWorker\nsr\authc-server\tomcat\conf\server.xml file 특히 다음 줄은 다음과 같습니다.
<SSLHostConfig protocols="TLSv1.2" sslProtocol="TLS" ciphers="TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256" >
NetWorker AuthC에서 사용하는 암호가 OS에 의해 보급되지 않으면 TLS 협상이 실패합니다. 이는 AuthC 서비스에 대한 모든 연결에 영향을 줍니다. 예: NMC 설치, NWUI(NetWorker Web User Interface) 설치, REST API 기능 등
解決方法
NetWorker에 맞는 암호를 알리도록 시스템을 구성하는 방법은 OS 및 보안 관리 팀에 문의하십시오. 이 문제는 NetWorker 외부에서 발생합니다.
해결 방법:
OS가 알려주는 것과 일치하는 암호를 사용하도록 NetWorker AuthC를 구성합니다.
- 의 복제본을 만듭니다.
C:\Program Files\EMC NetWorker\nsr\authc-server\tomcat\conf\server.xmlfile - 열기
C:\Program Files\EMC NetWorker\nsr\authc-server\tomcat\conf\server.xml텍스트 편집기의 파일. - 수정:
<SSLHostConfig protocols="TLSv1.2" sslProtocol="TLS" ciphers="TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256" >
수정 후:
<SSLHostConfig protocols="TLSv1.2" sslProtocol="TLS" ciphers="TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384, TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384, TLS_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA256, TLS_RSA_WITH_AES_128_GCM_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_256_CBC_SHA256, TLS_RSA_WITH_AES_256_GCM_SHA384" >
Get-TlsCipherSuite. 이러한 암호는 NetWorker 19.13.x에 구성된 기본 암호보다 덜 안전한 것으로 간주됩니다. 이것은 일시적인 해결책으로만 수행해야 합니다. NetWorker에 맞게 조정되는 강화된 OS 암호를 구성하는 것에 대해 OS 및 보안 관리 팀과 논의해야 합니다. OS가 보급되도록 구성된 후 TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256 원본으로 되돌릴 수 있습니다. server.xml 기본(강화된) 암호를 사용합니다. 이 작업을 수행하려면 NetWorker Server 서비스를 재시작해야 합니다.
- NetWorker Server 서비스 재시작(PowerShell 구문):
net stop nsrd ; net start nsrd - NMC(NetWorker Management Console)를 설치합니다. 메시지가 표시되면 AuthC 인증서를 로컬 머신의 신뢰할 수 있는 루트 인증서에 설치합니다.
- View Certificate를 클릭합니다.
- 인증서에서 인증서 설치를 클릭합니다.
- Local Machine을 선택하고 Next를 클릭합니다.
- 모든 인증서를 다음 저장소에 배치를 선택하고 찾아보기를 클릭합니다.
- Trusted Root Certification Authorities(신뢰할 수 있는 루트 인증 기관)를 선택하고 OK(확인)를 클릭합니다.
- Certificate Install Wizard에서 Next를 클릭합니다.
- 마침을 클릭합니다.
- "가져오기에 성공했습니다."라는 팝업 창이 나타나면 OK를 클릭합니다.
- Certificate 창에서 OK를 클릭합니다.
- Security Alert 창에서 Yes를 클릭합니다.
- NMC 설치를 완료합니다.