NetWorker : comment importer ou remplacer les certificats signés par l’autorité de certification pour NMC
Résumé: Ces instructions décrivent comment remplacer le certificat auto-signé NetWorker par défaut par un certificat signé par une autorité de certification sur un serveur NetWorker Management Console (NMC). ...
Instructions
Ces instructions décrivent comment remplacer le certificat auto-signé NetWorker par défaut par un certificat signé par une autorité de certification pour NetWorker Management Console (NMC). Cet article de la base de connaissances fournit des instructions pour les serveurs NMC Windows et Linux.
Le processus de remplacement des certificats auto-signés du service d’authentification du serveur NetWorker (AUTHC) et de l’interface utilisateur Web NetWorker (NWUI) par des certificats signés par une autorité de certification est détaillé dans les articles suivants spécifiques au système d’exploitation :
- NetWorker : comment importer ou remplacer les certificats signés par l’autorité de certification pour « AUTHC » et « NWUI » (Linux) (en anglais)
- NetWorker : comment importer ou remplacer les certificats signés par l’autorité de certification pour « AUTHC » et « NWUI » (Windows) (en anglais)
Certificats concernés :
-
<server>.csr: demande de signature de certificat du serveur NetWorker Management Console -
<server>.key: clé privée du serveur NetWorker Management Console -
<server>.crt: certificat signé par l’autorité de certification du serveur NetWorker Management Console -
<CA>.crt: certificat racine de l’autorité de certification -
<ICA>.crt: certificat intermédiaire de l’autorité de certification (facultatif, si disponible)
Avant de commencer :
Ce processus utilise l’utilitaire OpenSSL. Cet utilitaire est fourni par défaut sur les systèmes d’exploitation Linux ; cependant, il n’est pas inclus sur les systèmes Windows. Consultez l’administrateur système concernant l’installation d’OpenSSL. La version requise d’OpenSSL varie en fonction de la version de NetWorker installée.
- NetWorker 19.9 à 19.11 nécessite la version 1.1.1n d’openssl
- NetWorker 19.12.0.0 (Linux uniquement) prend en charge la version 3.0.14 d’openssl
- NetWorker 19.12.0.2 (Windows uniquement) prend en charge la version 3.0.14 d’openssl
La version OpenSSL peut être identifiée comme suit :
# openssl versionWindows. :
- Dans l’explorateur de fichiers Windows, accédez à l’emplacement openssl.exe. Ce chemin peut varier en fonction de la manière dont OpenSSL a été installé.
- Ouvrez le fichier openssl.exe et accédez à l’onglet Détails. Le champ Product Version indique la version d’OpenSSL :
Si le chemin d’accès au fichier openssl.exe fait partie de la variable PATH du système, vous pouvez exécuter la commande « openssl version » et l’invite de commande d’administration. Si le répertoire contenant openssl.exe ne fait pas partie de la variable PATH, changez de répertoire (cd) pour le répertoire contenant openssl.exe.
Générez un fichier de clé privée et de demande de signature de certificat (CSR) à fournir à votre autorité de certification.
- Sur le serveur NMC, utilisez l’utilitaire de ligne de commande OpenSSL pour créer le fichier de clé privée du serveur NetWorker (
<server>.key) et le fichier CSR (<server>.csr).
Linux :
# openssl req -new -newkey rsa:4096 -nodes -out /tmp/<server>.csr -keyout /tmp/<server>.key
Windows. :
set openssl="<Full system path to the openssl.exe file>" %openssl% req -new -newkey rsa:4096 -nodes -out "C:\tmp\<server>.csr" -keyout "C:\tmp\<server>.key"
C:\tmp n’existe pas.
- Envoyez le fichier CSR (
<server>.csr) à l’autorité de certification pour générer le fichier de certificat signé par l’autorité de certification (<server>.crt). L’autorité de certification doit fournir le fichier de certificat signé par l’autorité de certification (<server>.crt), le certificat racine (<CA>.crt), et tout certificat d’autorité de certification intermédiaire (<ICA>.crt).
Serveurs Linux NetWorker Management Console (NMC) :
- Obtenez les certificats signés par l’autorité de certification dans des fichiers de clé individuels ou un fichier unique au format PFX.
- Si les certificats signés par l’autorité de certification se trouvent dans un seul fichier PFX, la clé privée et le certificat signé par l’autorité de certification peuvent être extraits à l’aide de l’outil OpenSSL (OpenSSL peut ne pas être installé par défaut sous Windows et peut être installé séparément).
.crt et .key avec le chemin d’accès complet, y compris le nom de fichier de votre certificat et les fichiers de clés en conséquence.
- Extrayez la clé privée et le certificat signé par une autorité de certification à partir du fichier PFX.
# openssl pkcs12 -in <file>.pfx -out <server>.key -nodes -nocerts
# openssl pkcs12 -in <file>.pfx -out <server>.crt -nokeys
-
-
- Vérifiez l’intégrité du
server.keyetserver.crt.
- Vérifiez l’intégrité du
-
# openssl pkey -in <server>.key -pubout -outform pem | sha256sum
# openssl x509 -in <server>.crt -pubkey -noout -outform pem | sha256sum
-
-
- Convertissez la clé privée, le certificat de serveur signé par une autorité de certification, l’autorité de certification racine (et tous les certificats intermédiaires) au format PEM.
-
# openssl rsa -in <server>.key -outform pem -out server.key.pem
# openssl x509 -in <server>.crt -outform pem -out server.crt.pem
# openssl x509 -in CA.crt -outform pem -out CA.crt.pem
# openssl x509 -in ICA.crt -outform pem -out ICA.crt.pem
- Combinez les
server.key.pem,CA.crtracine, le certificat intermédiaire (le cas échéant) et le certificat de serveur signé dans le fichiercakey.pempour NMC :
# cat server.key.pem CA.crt.pem ICA.crt.pem server.crt.pem > cakey.pem
- Arrêtez le service
gstdu serveur NMC :
# systemctl stop gst
- Effectuez une copie du fichier existant
cakey.pem, puis remplacez le fichier par défaut par le fichier créé à l’étape 2, D.
# cp /opt/lgtonmc/etc/cakey.pem /opt/lgtonmc/etc/cakey.pem_orig # cp cakey.pem /opt/lgtonmc/etc/cakey.pem
cakey.pem correspond au port 9001. En remplaçant ce fichier par le fichier combiné créé à l’étape 2, D remplace le certificat auto-signé par le certificat signé par une autorité de certification.
- Effectuez une copie des fichiers du serveur NMC
server.crtetserver.key, puis remplacez les fichiers d’origine par les fichiers signésserver.crtetserver.key:
# cp /opt/lgtonmc/apache/conf/server.crt /opt/lgtonmc/apache/conf/server.crt_orig # cp <server>.crt /opt/lgtonmc/apache/conf/server.crt # cp /opt/lgtonmc/apache/conf/server.key /opt/lgtonmc/apache/conf/server.key_orig # cp <server>.key /opt/lgtonmc/apache/conf/server.key
- Démarrez le service
gstdu serveur NMC :
# systemctl start gst
- Surveiller les paramètres du serveur NMC
/opt/lgtonmc/logs/gstd.rawen cas d’erreurs.
NetWorker : Utilisation de nsr_render_log pour le rendu d’un fichier journal .raw
nsrnmc) avec 600 autorisations.
Vérification :
Lorsque le service gst service est en cours d’exécution, exécutez les opérations suivantes sur le serveur NMC :
openssl s_client -connect localhost:9001 -showcerts 2>/dev/null </dev/null openssl s_client -connect localhost:9000 -showcerts 2>/dev/null </dev/null
Exemple :
nve:~ # openssl s_client -connect localhost:9001 -showcerts 2>/dev/null </dev/null CONNECTED(00000003) --- Certificate chain 0 s:/C=CA/ST=Ontario/L=Toronto/O=Dell Technologies/OU=DPD/CN=nve.networker.lan i:/C=CA/ST=Ontario/L=Toronto/O=Dell Technologies/OU=DPD/CN=dc.networker.lan ... ... nve:~ # openssl s_client -connect localhost:9000 -showcerts 2>/dev/null </dev/null CONNECTED(00000003) --- Certificate chain 0 s:/C=CA/ST=Ontario/L=Toronto/O=Dell Technologies/OU=DPD/CN=nve.networker.lan i:/C=CA/ST=Ontario/L=Toronto/O=Dell Technologies/OU=DPD/CN=dc.networker.lan ... ... nve:~ #
Serveurs Windows NetWorker Management Console (NMC) :
- Obtenez les certificats signés par l’autorité de certification dans des fichiers de clé individuels ou un fichier unique au format PFX.
- Si les certificats signés par l’autorité de certification se trouvent dans un seul fichier PFX, la clé privée et le certificat signé par l’autorité de certification peuvent être extraits à l’aide de l’outil OpenSSL (OpenSSL n’est généralement pas installé par défaut sous Windows et peut être installé séparément).
.crt et .key avec le chemin d’accès complet, y compris le nom de fichier de votre certificat et les fichiers de clés en conséquence.
- Extrayez la clé privée et le certificat signé par une autorité de certification à partir du fichier PFX.
%openssl% pkcs12 -in <file>.pfx -out <server>.key -nodes -nocerts
%openssl% pkcs12 -in <file>.pfx -out <server>.crt -nokeys
-
-
- Vérifiez l’intégrité du
server.keyetserver.crt.
- Vérifiez l’intégrité du
-
%openssl% pkey -in <server>.key -pubout -outform pem | %openssl% dgst -sha256
%openssl% x509 -in <server>.crt -pubkey -noout -outform pem | %openssl% dgst -sha256
-
-
- Convertissez la clé privée, le certificat de serveur signé par une autorité de certification, l’autorité de certification racine (et tous les certificats intermédiaires) au format PEM.
-
%openssl% rsa -in <server>.key -outform pem -out C:\tmp\server.key.pem
%openssl% x509 -in <server>.crt -outform pem -out C:\tmp\server.crt.pem
- Combinez les
server.key.pemetsever.crt.pemdans le fichiercakey.pempour NMC. Pour ce faire, il est recommandé d’utiliser la commande PowerShell suivante :
PS C:\tmp> Get-Content server.key.pem,server.crt.pem | Out-File cakey.pem -Encoding ascii
-Encoding ascii n’est pas définie, le problème suivant peut être observé : NetWorker : le serveur NMC Windows ne parvient pas à démarrer le service GSTD après le remplacement des certificats (en anglais)
- Arrêtez le service
gstdu serveur NMC :
net stop gstd
- Effectuez une copie du fichier d’origine
cakey.pem, puis remplacez l’autorité de certification combinée signéecakey.pemavec cette copie :
copy "C:\Program Files\EMC NetWorker\Management\GST\etc\cakey.pem" "C:\Program Files\EMC NetWorker\Management\GST\etc\cakey.pem_orig" copy C:\tmp\cakey.pem "C:\Program Files\EMC NetWorker\Management\GST\etc\cakey.pem"
cakey.pem correspond au port 9001. En remplaçant ce fichier par le fichier combiné créé à l’étape 2, D remplace le certificat auto-signé par le certificat signé par une autorité de certification.
- Effectuez une copie des fichiers du serveur NMC
server.crtetserver.key, puis remplacez les fichiers d’origine par les fichiers signésserver.crtetserver.key:
copy "C:\Program Files\EMC NetWorker\Management\GST\apache\conf\server.crt" "C:\Program Files\EMC NetWorker\Management\GST\apache\conf\server.crt_orig" copy "C:\Program Files\EMC NetWorker\Management\GST\apache\conf\server.key" "C:\Program Files\EMC NetWorker\Management\GST\apache\conf\server.key_orig" copy <server>.crt "C:\Program Files\EMC NetWorker\Management\GST\apache\conf\server.crt" copy <server>.key "C:\Program Files\EMC NetWorker\Management\GST\apache\conf\server.key"
- Démarrez le service
gstdu serveur NMC :
net start gstd
- Surveiller les paramètres du serveur NMC
C:\Program Files\EMC NetWorker\Management\GST\logs\gstd.rawen cas d’erreurs.
NetWorker : Utilisation de nsr_render_log pour le rendu d’un fichier journal .raw
nsrnmc) avec 600 autorisations.
Vérification :
Lorsque le service gst Le service est en cours d’exécution, exécutez la commande suivante à partir de PowerShell sur le serveur NMC, en remplaçant le PORT. Exécutez une fois pour le port 9000 et une fois pour le port 9001.
param(
[string]$Server = "localhost",
[int]$Port = PORT
)
$tcp = [System.Net.Sockets.TcpClient]::new()
$tcp.Connect($Server, $Port)
# Accept any certificate so we can inspect it (this is inspection only)
$ssl = [System.Net.Security.SslStream]::new(
$tcp.GetStream(),
$false,
{ param($sender, $cert, $chain, $errors) $true }
)
try {
# SNI/target host is the $Server value
$ssl.AuthenticateAsClient($Server)
$remoteCert = [System.Security.Cryptography.X509Certificates.X509Certificate2]::new($ssl.RemoteCertificate)
# Some keys use CNG and PublicKey.Key can be $null; fall back safely
$keySize = try { $remoteCert.PublicKey.Key.KeySize } catch { $null }
if (-not $keySize) { $keySize = ($remoteCert.PublicKey.EncodedKeyValue.RawData.Length * 8) }
"=== Certificate (from $($Server):$Port) ==="
"Subject : $($remoteCert.Subject)"
"Issuer : $($remoteCert.Issuer)"
"NotBefore : $($remoteCert.NotBefore)"
"NotAfter : $($remoteCert.NotAfter)"
"Public Key : $($remoteCert.PublicKey.Oid.FriendlyName) ($keySize-bit)"
"Signature Algorithm : $($remoteCert.SignatureAlgorithm.FriendlyName)"
}
finally {
$ssl.Dispose()
$tcp.Dispose()
}
Exemple :
PS C:\Users\Administrator.NETWORKER> param( >> [string]$Server = "localhost", >> [int]$Port = 9001 >> ) 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> PS C:\Users\Administrator.NETWORKER> # Accept any certificate so we can inspect it (this is inspection only) 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 { >> # SNI/target host is the $Server value >> $ssl.AuthenticateAsClient($Server) >> >> $remoteCert = [System.Security.Cryptography.X509Certificates.X509Certificate2]::new($ssl.RemoteCertificate) >> >> # Some keys use CNG and PublicKey.Key can be $null; fall back safely >> $keySize = try { $remoteCert.PublicKey.Key.KeySize } catch { $null } >> if (-not $keySize) { $keySize = ($remoteCert.PublicKey.EncodedKeyValue.RawData.Length * 8) } >> >> "=== Certificate (from $($Server):$Port) ===" >> "Subject : $($remoteCert.Subject)" >> "Issuer : $($remoteCert.Issuer)" >> "NotBefore : $($remoteCert.NotBefore)" >> "NotAfter : $($remoteCert.NotAfter)" >> "Public Key : $($remoteCert.PublicKey.Oid.FriendlyName) ($keySize-bit)" >> "Signature Algorithm : $($remoteCert.SignatureAlgorithm.FriendlyName)" >> } >> finally { >> $ssl.Dispose() >> $tcp.Dispose() >> } === Certificate (from localhost:9001) === Subject : CN=win-srvr02.networker.lan, OU=DPD, O=Dell Technologies, L=Toronto, S=Ontario, C=CA Issuer : CN=dc.networker.lan, OU=DPD, O=Dell Technologies, L=Toronto, S=Ontario, C=CA NotBefore : 03/09/2026 15:42:43 NotAfter : 06/11/2028 15:42:43 Public Key : RSA (2048-bit) Signature Algorithm : sha256RSA PS C:\Users\Administrator.NETWORKER> param( >> [string]$Server = "localhost", >> [int]$Port = 9000 >> ) 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> PS C:\Users\Administrator.NETWORKER> # Accept any certificate so we can inspect it (this is inspection only) 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 { >> # SNI/target host is the $Server value >> $ssl.AuthenticateAsClient($Server) >> >> $remoteCert = [System.Security.Cryptography.X509Certificates.X509Certificate2]::new($ssl.RemoteCertificate) >> >> # Some keys use CNG and PublicKey.Key can be $null; fall back safely >> $keySize = try { $remoteCert.PublicKey.Key.KeySize } catch { $null } >> if (-not $keySize) { $keySize = ($remoteCert.PublicKey.EncodedKeyValue.RawData.Length * 8) } >> >> "=== Certificate (from $($Server):$Port) ===" >> "Subject : $($remoteCert.Subject)" >> "Issuer : $($remoteCert.Issuer)" >> "NotBefore : $($remoteCert.NotBefore)" >> "NotAfter : $($remoteCert.NotAfter)" >> "Public Key : $($remoteCert.PublicKey.Oid.FriendlyName) ($keySize-bit)" >> "Signature Algorithm : $($remoteCert.SignatureAlgorithm.FriendlyName)" >> } >> finally { >> $ssl.Dispose() >> $tcp.Dispose() >> } === Certificate (from localhost:9000) === Subject : CN=win-srvr02.networker.lan, OU=DPD, O=Dell Technologies, L=Toronto, S=Ontario, C=CA Issuer : CN=dc.networker.lan, OU=DPD, O=Dell Technologies, L=Toronto, S=Ontario, C=CA NotBefore : 03/09/2026 15:42:43 NotAfter : 06/11/2028 15:42:43 Public Key : RSA (2048-bit) Signature Algorithm : sha256RSA
Informations supplémentaires
Même après le remplacement du certificat auto-signé de NMC par un certificat signé par une autorité de certification, l’avertissement suivant s’affiche lors de la connexion à un serveur NMC à partir du lanceur NMC :

Cliquez sur « View Certificate Details ». Les détails du certificat valident l’utilisation du certificat signé par l’autorité de certification.
L’avertissement s’affiche car le certificat signé est manquant dans les certificats racine de confiance du client NMC.
Cet avertissement peut être ignoré ; si vous le souhaitez, le certificat signé par l’autorité de certification du serveur NMC peut également être importé dans les certificats racine de confiance du client NMC :
- Mettez le certificat signé par l’autorité de certification du serveur NMC (
<server>.crt) sur l’hôte client NMC dans un dossier de votre choix. - Ouvrez les propriétés du certificat signé par l’autorité de certification.
- Cliquez sur Installer un certificat.
- Sélectionnez Machine locale.
- Sélectionnez Placer tous les certificats dans le magasin suivant.
- Cliquez sur Parcourir.
- Sélectionnez Trusted Root Certification Authorities, puis cliquez sur OK.
- Cliquez sur Next (Suivant).
- Cliquez sur Finish (Terminer).
- Un message s’affiche indiquant si l’importation a échoué ou a réussi. Cliquez sur OK.
- Dans les propriétés du certificat signé par l’autorité de certification, cliquez sur OK.
Lors du prochain démarrage de NMC, l’avertissement de sécurité ne s’affiche pas.