NetWorker : comment importer ou remplacer les certificats signés par l’autorité de certification pour « AUTHC » et « NWUI » (Linux) (en anglais)
Résumé: Il s’agit des étapes générales à suivre pour remplacer le certificat auto-signé NetWorker par défaut par un certificat signé par une autorité de certification (AC) pour les services « AUTHC » et NetWorker Web UI (NWUI). ...
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 les services d’authentification NetWorker (AUTHC) et NetWorker Web UI (NWUI) sur le NetWorker Server.
Les noms de fichiers n’ont pas d’exigence de nommage, mais les extensions doivent être référencées pour le type de fichier. Les exemples de commandes présentés concernent Linux. Pour obtenir des instructions Windows, reportez-vous à :
NetWorker : comment importer ou remplacer les certificats signés par l’autorité de certification pour « AUTHC » et « NWUI » (Windows) (en anglais)
Fichiers de certificat concernés :
<server>.csr: NetWorker server certificate signing request <server>.key: NetWorker server private key <server>.crt: NetWorker server CA-signed certificate <CA>.crt: CA root certificate <ICA>.crt: CA intermediate certificate (optional if it is available)
Magasins de clés concernés :
authc.keystore authc.truststore cacerts nwui.keystore
Générez un fichier de clé privée et de demande de signature de certificat (CSR) à fournir à votre autorité de certification.
-
Utilisez l’utilitaire de ligne de commande OpenSSL pour créer le fichier de clé privée du NetWorker Server (
<server>.key) et le fichier CSR (<server>.csr).# openssl req -new -newkey rsa:4096 -nodes -out /tmp/<server>.csr -keyout /tmp/<server>.key
-
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).
Étapes de prévérification :
Assurez-vous de disposer des éléments suivants :
- server.crt, qui contient un certificat PEM dont la première ligne est -----BEGIN CERTIFICATE----- et la dernière ligne est -----END CERTIFICATE-----
- Le fichier de clés commence par ----- BEGIN RSA PRIVATE KEY ----- et se termine par ----- END RSA PRIVATE KEY -----
- Vérifiez que tous les certificats sont des fichiers au format PEM valides en exécutant
openssl x509 -in <cert> -text -noout. - Vérifiez la sortie ci-dessus pour vous assurer qu’il s’agit du bon certificat.
- Vérifiez la sortie des deux commandes suivantes :
openssl rsa -pubout -in server.key
openssl x509 -pubkey -noout -in server.crt
La sortie de ces deux commandes doit correspondre.
Afin de faciliter les étapes et les commandes décrites ci-dessous, nous créons les variables suivantes :
java_bin=/opt/nre/java/latest/bin nsr=<path to /nsr partition> # In case of NVE for instance this is /data01/nsr cert=<path to server crt file> key=<path to server key file> RCAcert=<path to Root CA file> ICAcert=<path to intermediate CA crt file>
S’il existe plusieurs certificats intermédiaires, créez des variables pour chaque certificat : ICA1, ICA2, etc
. Vous devez connaître les mots de passe corrects du magasin de clés NetWorker. Ces mots de passe sont définis lors de la configuration AUTHC et NWUI. Si vous n’êtes pas sûr, reportez-vous à la section :
Vous pouvez également utiliser les variables pass de votre magasin de clés (option 1) ou les stocker dans un fichier pour garder le mot de passe caché (option 2) :
Exemple pour l’option 1 :
authc_storepass='P4ssw0rd!' nwui_storepass='Password1!'
Exemple pour l’option 2 :
authc_storepass=$(cat authc_storepass_file.txt) nwui_storepass=$(cat nwui_storepass_file.txt)
Avant de commencer :
Effectuez une copie de sauvegarde du fichier Java cacerts.
cp -p /opt/nre/java/latest/lib/security/cacerts /tmp/cacerts_$(date -I).bkp
Étapes de remplacement du certificat de service d’authentification :
La commande authc Il n’est pas nécessaire d’arrêter le service pour que la procédure ci-dessous fonctionne. Toutefois, il doit être redémarré pour que les nouveaux certificats soient chargés.
-
Importation des certificats
-
Importez le certificat racine (
<CA>.crt) et tous les certificats d’autorité de certification intermédiaires (<ICA>.crt) dans leauthc.keystore.$java_bin/keytool -import -alias RCA -keystore $nsr/authc/conf/authc.keystore -file $RCAcert -storepass $authc_storepass $java_bin/keytool -import -alias RCA -keystore /opt/nsr/authc-server/conf/authc.truststore -file $RCAcert -storepass $authc_storepass $java_bin/keytool -import -alias ICA -keystore $nsr/authc/conf/authc.keystore -file $ICAcert -storepass $authc_storepass $java_bin/keytool -import -alias ICA -keystore /opt/nsr/authc-server/conf/authc.truststore -file $ICAcert -storepass $authc_storepass
-
Utilisez le fichier de clé privée du NetWorker Server (
<server>.key) et le nouveau fichier de certificat signé par une autorité de certification (<server>.crt) pour créer un fichier de stockage PKCS12 pour leemcauthctomcatetemcauthcsamlAlias.openssl pkcs12 -export -in $cert -inkey $key -name emcauthctomcat -out /tmp/$hostname.tomcat.authc.p12 -password pass:$authc_storepass openssl pkcs12 -export -in $cert -inkey $key -name emcauthcsaml -out /tmp/$hostname.saml.authc.p12 -password pass:$authc_storepass
Remarque : le mot de passe du fichier pkcs12 doit correspondre au mot de passe du magasin de clés. C’est pourquoi, dans ce cas, nous le créons avec la commandeauthcStorePass. -
Importez les fichiers de la banque PKCS12 dans
authc.keystore.$java_bin/keytool -importkeystore -destkeystore /nsr/authc/conf/authc.keystore -srckeystore /tmp/$hostname.tomcat.authc.p12 -srcstoretype PKCS12 -srcstorepass $authc_storepass -deststorepass $authc_storepass $java_bin/keytool -importkeystore -destkeystore /nsr/authc/conf/authc.keystore -srckeystore /tmp/$hostname.saml.authc.p12 -srcstoretype PKCS12 -srcstorepass $authc_storepass -deststorepass $authc_storepass
-
Importez les fichiers de la banque PKCS12 dans
authc.truststore.$java_bin/keytool -importkeystore -destkeystore /opt/nsr/authc-server/conf/authc.truststore -srckeystore /tmp/$hostname.tomcat.authc.p12 -srcstoretype PKCS12 -srcstorepass $authc_storepass -deststorepass $authc_storepass $java_bin/keytool -importkeystore -destkeystore /opt/nsr/authc-server/conf/authc.truststore -srckeystore /tmp/$hostname.saml.authc.p12 -srcstoretype PKCS12 -srcstorepass $authc_storepass -deststorepass $authc_storepass
-
Supprimez le certificat auto-signé NetWorker par défaut et importez le nouveau fichier de certificat signé par une autorité de certification (
<server>.crt) dans leauthc.truststore.$java_bin/keytool -delete -alias emcauthctomcat -keystore /opt/nsr/authc-server/conf/authc.truststore -storepass $authc_storepass $java_bin/keytool -import -alias emcauthctomcat -keystore /opt/nsr/authc-server/conf/authc.truststore -file $cert -storepass $authc_storepass $java_bin/keytool -delete -alias emcauthcsaml -keystore /opt/nsr/authc-server/conf/authc.truststore -storepass $authc_storepass $java_bin/keytool -import -alias emcauthcsaml -keystore /opt/nsr/authc-server/conf/authc.truststore -file $cert -storepass $authc_storepass
-
Enfin, importez ce certificat dans le fichier de magasin de clés Java cacerts sous
emcauthctomcatAlias:$java_bin/keytool -delete -alias emcauthctomcat -keystore $java_bin/../lib/security/cacerts -storepass changeit $java_bin/keytool -import -alias emcauthctomcat -keystore $java_bin/../lib/security/cacerts -file $cert -storepass changeit
Remarque : Si vous utilisez NetWorker 19.13 (ou une version ultérieure),keytoolLes commandes peuvent renvoyer un avertissement lors de l’importationcacertsCertificats. États d’avertissement à utiliser-cacertsau lieu de-keystore. Cela peut être ignoré en toute sécurité, malgré l’avertissement, la syntaxe indiquée dans cet article importe les certificats de toute façon. L’alternative consiste à remplacer «-keystore $java_bin/../lib/security/cacerts« avec »-cacerts" dans les commandes ; L’avertissement est alors supprimé.
-
-
Modifiez le
admin_service_default_url=localhostvaleur dans l’attributauthc-cli-app.propertiespour refléter le nom du NetWorker Server utilisé dans le fichier de certificat signé par une autorité de certification :cat /opt/nsr/authc-server/conf/authc-cli-app.properties admin_service_default_protocol=https admin_service_default_url=<my-networker-server.my-domain.com> admin_service_default_port=9090 admin_service_default_user= admin_service_default_password= admin_service_default_tenant= admin_service_default_domain= - Un redémarrage des services NetWorker est nécessaire pour
authcpour utiliser le nouveau certificat importé.
nsr_shutdown systemctl start networker
-
Rétablir
authcConfiance sur le serveur NetWorker :nsrauthtrust -H <local host or Authentication_service_host> -P 9090
Vérifications post-AUTHC :
La sortie de chaque alias « Certificate fingerprint » coïncide avec celles des autres magasins de clés :
$java_bin/keytool -list -keystore $java_bin/../lib/security/cacerts -storepass changeit | grep emcauthctomcat -A1 $java_bin/keytool -list -keystore /opt/nsr/authc-server/conf/authc.truststore -storepass $authc_storepass | grep emcauthctomcat -A1 $java_bin/keytool -list -keystore $nsr/authc/conf/authc.keystore -storepass $authc_storepass | grep emcauthctomcat -A1
La sortie doit être similaire à ceci :
Certificate fingerprint (SHA-256): FD:54:B4:11:42:87:FF:CA:80:77:D2:C7:06:87:09:72:70:85:C1:70:39:32:A9:C0:14:83:D9:3A:29:AF:44:90
Cette empreinte provient du certificat qui a été installé. Cela indique que l’introduction du nouveau certificat dans les différents magasins de clés a été effectuée correctement.
openssl x509 -in $cert -fingerprint -sha256 -noout
lorsque la propriété authc Le service est opérationnel, vous pouvez vérifier que le certificat qu’il fournit à une connexion entrante est le même que celui indiqué ci-dessus :
openssl x509 -in <(openssl s_client -connect localhost:9090 -prexit 2>/dev/null </dev/null | sed -n -e '/BEGIN\ CERTIFICATE/,/END\ CERTIFICATE/ p') -fingerprint -sha256 -noout
Vous pouvez également vérifier l’objet et l’émetteur du certificat utilisé par le port 9090 :
openssl s_client -connect localhost:9090 -showcerts 2>/dev/null </dev/null | grep -E "issuer|subject"
Interface utilisateur NetWorker (nwui) Étapes de remplacement du certificat de service :
Nous supposons que l’attribut nwui Les services sont en cours d’exécution sur le serveur NetWorker.
-
Arrêtez le
nwuiServicesystemctl stop nwui
-
Supprimez les certificats auto-signés NetWorker par défaut et importez le nouveau fichier de certificat signé par une autorité de certification (
<server>.crt) dans le magasin de clés cacerts. Pour plus de cohérence, nous remplaçons tous lesnwuiavec le certificat signé par une autorité de certification.- Il est nécessaire de déterminer si NetWorker Runtime Environment (NRE) ou Java Runtime Environment (JRE) est utilisé avant d’effectuer les étapes suivantes.
- Si JRE est utilisé, le chemin d’accès de /cacerts se trouve à l’adresse
$java_bin/../lib/security/cacerts. - Si NRE est utilisé, le chemin d’accès de /cacerts se trouve à l’adresse
/opt/nre/java/latest/lib/security/cacerts.$java_bin/keytool -delete -alias emcnwuimonitoring -keystore $java_bin/../lib/security/cacerts -storepass changeit $java_bin/keytool -import -alias emcnwuimonitoring -keystore $java_bin/../lib/security/cacerts -file $cert -storepass changeit $java_bin/keytool -delete -alias emcnwuiserv -keystore $java_bin/../lib/security/cacerts -storepass changeit $java_bin/keytool -import -alias emcnwuiserv -keystore $java_bin/../lib/security/cacerts -file $cert -storepass changeit $java_bin/keytool -delete -alias emcnwuiauthc -keystore $java_bin/../lib/security/cacerts -storepass changeit $java_bin/keytool -import -alias emcnwuiauthc -keystore $java_bin/../lib/security/cacerts -file $cert -storepass changeit
Remarque : Si vous utilisez NetWorker 19.13 (ou une version ultérieure),keytoolLes commandes peuvent renvoyer un avertissement lors de l’importationcacertsCertificats. États d’avertissement à utiliser-cacertsau lieu de-keystore. Cela peut être ignoré en toute sécurité, malgré l’avertissement, la syntaxe indiquée dans cet article importe les certificats de toute façon. L’alternative consiste à remplacer «-keystore $java_bin/../lib/security/cacerts« avec »-cacerts" dans les commandes ; L’avertissement est alors supprimé.
-
Utilisez le fichier de clé privée du NetWorker Server (
<server>.key) et le nouveau fichier de certificat signé par une autorité de certification (<server>.crt) pour créer un fichier de stockage PKCS12 pour leemcauthctomcatetemcauthcsamlalias pour l’attributnwui.openssl pkcs12 -export -in $cert -inkey $key -name emcauthctomcat -out /tmp/$hostname.tomcat.nwui.p12 -password pass:$nwui_storepass openssl pkcs12 -export -in $cert -inkey $key -name emcauthcsaml -out /tmp/$hostname.saml.nwui.p12 -password pass:$nwui_storepass
Remarque : le mot de passe du fichier pkcs12 doit correspondre au mot de passe du magasin de clés. C’est pourquoi, dans ce cas, nous le créons avec la commandenwuiStorePass. -
Importez les fichiers .p12, le certificat d’autorité de certification racine et les certificats d’autorité de certification intermédiaires dans
nwui.$java_bin/keytool -importkeystore -destkeystore $nsr/nwui/monitoring/app/conf/nwui.keystore -srckeystore /tmp/$hostname.tomcat.nwui.p12 -srcstoretype PKCS12 -srcstorepass $nwui_storepass -deststorepass $nwui_storepass $java_bin/keytool -importkeystore -destkeystore $nsr/nwui/monitoring/app/conf/nwui.keystore -srckeystore /tmp/$hostname.saml.nwui.p12 -srcstoretype PKCS12 -srcstorepass $nwui_storepass -deststorepass $nwui_storepass $java_bin/keytool -import -alias RCA -keystore $nsr/nwui/monitoring/app/conf/nwui.keystore -file $RCAcert -storepass $nwui_storepass $java_bin/keytool -import -alias ICA -keystore $nsr/nwui/monitoring/app/conf/nwui.keystore -file $ICAcert -storepass $nwui_storepass
-
Renommez le fichier binaire
emcnwuimonitoring,emcnwuiauthcetemcnwuiservcertificats, et placez notre certificat de serveur ici dans ce chemin avec le même nom. Vous êtes invité à écraser les fichiers d’origine (cela conserve la propriété et les autorisations existantes)cp -p /nsr/nwui/monitoring/app/conf/emcnwuimonitoring.cer /nsr/nwui/monitoring/app/conf/emcnwuimonitoring.cer_orig cp $cert /nsr/nwui/monitoring/app/conf/emcnwuimonitoring.cer mv -p /opt/nwui/conf/emcnwuiauthc.cer /opt/nwui/conf/emcnwuiauthc.cer_orig cp $cert /opt/nwui/conf/emcnwuiauthc.cer cp -p /opt/nwui/conf/emcnwuiserv.cer /opt/nwui/conf/emcnwuiserv.cer_orig cp $cert /opt/nwui/conf/emcnwuiserv.cer
Remarque : Vous êtes invité à écraser les fichiers d’origine (cela conserve la propriété et les autorisations existantes) -
nwuiÉtapes de remplacement du certificat PostgreSQLcp -p $nsr/nwui/monitoring/nwuidb/pgdata/server.crt /nsr/nwui/monitoring/nwuidb/pgdata/server.crt_orig cp -p $nsr/nwui/monitoring/nwuidb/pgdata/server.key /nsr/nwui/monitoring/nwuidb/pgdata/server.key_orig cp $cert $nsr/nwui/monitoring/nwuidb/pgdata/server.crt cp $key $nsr/nwui/monitoring/nwuidb/pgdata/server.key
Remarque : Vous êtes invité à écraser les fichiers d’origine (cela conserve la propriété et les autorisations existantes) -
Démarrez le
nwuiServicessystemctl start nwui
nwui Vérifications a posteriori :
La sortie de chaque alias « Certificate fingerprint » coïncide avec celles des autres magasins de clés :
$java_bin/keytool -list -keystore $nsr/nwui/monitoring/app/conf/nwui.keystore -storepass $nwui_storepass | grep emcauthctomcat -A1 $java_bin/keytool -list -keystore $java_bin/../lib/security/cacerts -storepass changeit | grep emcauthctomcat -A1 $java_bin/keytool -list -storepass $authc_storepass -keystore $nsr/authc/conf/authc.keystore | grep emcauthctomcat -A1
Cette empreinte provient du certificat qui a été installé. Cela indique que l’introduction du nouveau certificat dans les différents magasins de clés a été effectuée correctement.
openssl x509 -in $cert -fingerprint -sha256 -noout
Vous pouvez également vérifier l’objet et l’émetteur du certificat utilisé par le port 9090 :
openssl s_client -connect localhost:9095 -showcerts 2>/dev/null </dev/null | grep -E "issuer|subject"
NetWorker Management Console :
Ce sujet est abordé dans l’article : NetWorker : comment importer ou remplacer les certificats signés par l’autorité de certification pour NMC
NetWorker HTTP Strict Transport Security (HSTS) :
NetWorker : Activation de la configuration HSTS sur le serveur NetWorker Apache Tomcat
Informations supplémentaires
Les instructions suivantes peuvent être utilisées pour revenir à l’attribut cacerts Copie de fichier créée avant de suivre cet article. Le processus suivant réinitialise également NetWorker à l’aide des certificats auto-signés par défaut pour AUTHC et NWUI.
- Vérifiez que vous disposez d’une copie de sauvegarde. Si la commande Before you start a été utilisée, vous devez disposer d’une copie datée de
cacertsdans le fichier du serveur/tmp. Par exemple :
[root@nsr ~]# ls -l /tmp | grep cacerts
-rwxr-xr-x. 1 root root 129266 Mar 23 14:44 cacerts_2026-03-23.bkp
- Arrêtez les services NetWorker :
systemctl stop nwui nsr_shutdown
- Vérifiez que les services NetWorker ne sont pas en cours d’exécution :
systemctl status networker systemctl status nwui
- Copiez les fichiers cacerts à leur emplacement d’origine :
rsync ». Cette opération permet d’écraser les fichiers existants, tout en veillant à ce que la propriété et les autorisations par défaut soient conservées.
rsync -a --no-perms --no-owner --no-group /tmp/cacerts_<date>.bkp /opt/nre/java/latest/lib/security/cacerts
- Réexécutez le
authc_configure.shscript et spécifiez l’option permettant de créer un nouveau magasin de clés. Exemple :
[root@nsr ~]# /opt/nsr/authc-server/scripts/authc_configure.sh
Specify the directory where the Java Standard Edition Runtime Environment (JRE) software is installed [/opt/nre/java/latest]:
The installation process will install an Apache Tomcat instance.
For optimum security, EMC NetWorker Authentication Service will
use a non-root user (nsrtomcat) to start the Apache Tomcat instance.
If your system has special user security requirements, ensure that proper
operational permissions are granted to this non-root user (nsrtomcat).
Please refer to NetWorker Installation Guide.
The Apache Tomcat will use "nsr.amer.lan" as the host name.
The Apache Tomcat will use "9090" as the port number.
The NetWorker Authentication Service requires a keystore file to configure encryption and to provide SSL support.
EMC recommends that you specify a keystore password that has a minimum of six characters.
Do you want to use the existing keystore /nsr/authc/conf/authc.keystore [y]? n
The installation process will create a new keystore file.
Specify the keystore password: HIDDEN_PASSWORD
Confirm the password: HIDDEN_PASSWORD
Creating the installation log in /opt/nsr/authc-server/logs/install.log.
Performing initialization. Please wait...
The installation completed successfully.
- Démarrez les services du NetWorker Server :
systemct start networker
- Utilisez la commande
nwui_configure.shscript et spécifiez l’option permettant de créer un nouveau magasin de clés. Exemple :
[root@nsr ~]# mv /nsr/nwui /nsr/nwui_$(date -I).bak
[root@nsr ~]# /opt/nwui/scripts/nwui_configure.sh Specify the directory where the Java Standard Edition Runtime Environment (JRE) software is installed [/opt/nre/java/latest]: Specify the host name of the NetWorker Authentication Service host [nsr.amer.lan]: Specify the host name of the NetWorker Server to be Managed by NWUI [nsr.amer.lan]: Specify the AUTHC port for Networker Server which is managed by NWUI [9090]: The NetWorker Web UI Server requires a keystore file to configure encryption and to provide SSL support. EMC recommends that you specify a password that has a minimum of nine characters, with at least one upper case letter, one lower case letter, one number and one special character. The installation process will create a new keystore file. Specify the keystore password: HIDDEN_PASSWORD Confirm the password: HIDDEN_PASSWORD
nwui_configure.sh script peut signaler qu’il ne peut pas atteindre le serveur AUTHC sur le port 9090. En supposant que le port par défaut (9090) est utilisé, patientez quelques minutes ou exécutez nwui_configure.sh Une fois que le port 9090 s’affiche comme en écoute : netstat -apno | grep :9090.
- Démarrez le service NWUI :
systemctl start nwui
- Vérifiez que les services ont démarré :
systemctl status networker systemctl status nwui
Le serveur doit fonctionner avec les certificats auto-signés par défaut déployés par NetWorker.