NMC: la instalación falla con el error "No se puede verificar el nombre de host o el puerto del servidor de autenticación"
Resumen: La instalación de NetWorker Management Console (NMC) falla en un host de Windows con el error: "No se puede verificar el nombre de host o el puerto del servidor de autenticación".
Síntomas
- La instalación de NetWorker Management Console (NMC) falla en un host Windows con un mensaje de error de autenticación.
- El servidor de NMC se instala en un host de Windows separado del servidor de NetWorker.
- El servicio de autenticación de NetWorker está en funcionamiento.
- El puerto 9090 está abierto.
nsrports -t NetWorker_ServerName -p 9090
Causa
La instalación de NMC negocia con el servicio de autenticación de NetWorker a través de TLS anterior a la versión 1.2.
Resolución
Realice lo siguiente en el servidor de NetWorker:
- Haga una copia de respaldo de:
C:\Program Files\EMC NetWorker\nsr\authc-server\tomcat\conf\server.xml.
- Edite el archivo
server.xmly busque la cadena.
Ejemplo de NetWorker 19.12 (y versiones anteriores):
sslEnabledProtocols="TLSv1.2"
SSLHostConfig protocols="TLSv1.2"Cambie el valor de la cadena de protocolos a:
"TLSv1.2, TLSv1.1, TLSv1"
- Guarde los cambios en el archivo.
- Reinicie el servicio de NetWorker.
net stop nsrd net start nsrd
- Instalar NetWorker y NMC en el servidor NMC. Esta vez debería aparecer el símbolo del sistema para instalar el certificado.
NOTA: Si aún no ve la opción para instalar el certificado, el problema puede deberse a una incompatibilidad entre los cifrados anunciados por el sistema operativo del servidor Authc y los que utilizan los cifrados de Authc de la versión de NetWorker. Consulte NetWorker: La instalación del servidor de NMC falla en el host de Windows "No se puede verificar el hostame o el puerto del servidor de autenticación". - Agregue el certificado a la lista de certificados de confianza raíz.
- Haga clic en Ver certificado.
- En Certificate, haga clic en Install Certificate.
- Seleccione Local Machine y haga clic en Next.
- Seleccione Place all certificates in the following store y, a continuación, haga clic en Browse.
- Seleccione Autoridades de certificación raíz de confianza y, a continuación, haga clic en Aceptar.
- En el Asistente de instalación de certificados, haga clic en Siguiente.
- Haga clic en Finish.
- Debería aparecer una ventana emergente que indique "La importación se realizó correctamente". Haga clic en Aceptar.
- En la ventana Certificado, haga clic en Aceptar.
- En la ventana Alerta de seguridad, haga clic en Sí.
- Continúe hasta que finalice la instalación.
Una vez finalizada la instalación, vuelva a la copia original de server.xml. Se requiere un reinicio del servicio de NetWorker para que los cambios surtan efecto.
Información adicional
Artículo relacionado: La instalación de NMC falla en el host de Windows "No se puede verificar el nombre de host o el puerto del servidor de autenticación"
Validación de TLS:
Lo siguiente se puede ejecutar en un símbolo del sistema de PowerShell en el servidor NMC: reemplace el AUTHC_SERVERNAME con la dirección de su servidor AUTHC.
$server = "AUTHC_SERVERNAME"
$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()
}
Ejemplo:
PS C:\Users\Administrator.NETWORKER> $server = "win-srvr02.networker.lan"
PS C:\Users\Administrator.NETWORKER> $port = 9090
PS C:\Users\Administrator.NETWORKER>
PS C:\Users\Administrator.NETWORKER> $tcp = [System.Net.Sockets.TcpClient]::new()
PS C:\Users\Administrator.NETWORKER> $tcp.Connect($server, $port)
PS C:\Users\Administrator.NETWORKER> $ssl = [System.Net.Security.SslStream]::new(
>> $tcp.GetStream(),
>> $false,
>> { param($sender,$cert,$chain,$errors) $true }
>> )
PS C:\Users\Administrator.NETWORKER>
PS C:\Users\Administrator.NETWORKER> 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()
>> }
=== Protocol ===
Tls12
=== Cipher ===
Aes256 (256-bit)
=== Certificate Chain (PEM) ===
----- Certificate 1 -----
Subject : CN=WIN-SRVR02.networker.lan, OU=NetWorker, O=DELL, L=Round Rock, S=TX, C=US
Issuer : CN=WIN-SRVR02.networker.lan, OU=NetWorker, O=DELL, L=Round Rock, S=TX, C=US
NotBefore: 12/12/2025 15:16:03
NotAfter : 12/06/2050 15:16:03
Este resultado muestra que el protocolo TLS negociado es TLSv1.2 y que el servidor AUTHC utiliza un certificado autofirmado válido.