Introduction
Ce document décrit comment remplacer les certificats SSL auto-signés dans les clusters Hyperflex par des certificats tiers.
Conditions préalables
Exigences
Cisco vous recommande de prendre connaissance des rubriques suivantes :
- Compréhension de base des certificats SSL.
- Compréhension de base de la ligne de commande Linux.
- Opérations de cluster Hyperflex.
Composants utilisés
Les informations contenues dans ce document sont basées sur :
Hyperflex Data Platform
(HXDP) 5.0.(2a) et versions ultérieures
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. Si votre réseau est en ligne, assurez-vous de bien comprendre l’incidence possible des commandes.
Informations générales
Dans le déploiement Cisco HyperFlex, un ensemble de certificats locaux est généré entre les composants pour permettre une communication fiable.
Si vos organisations disposent déjà d'une autorité de certification, il est recommandé de remplacer les certificats SSL par défaut par vos propres certificats.
EAssurez-vous que vous disposez de ces exigences avant de tenter cette configuration :
- Serveur d'autorité de certification
- Machine Linux
Configurer
Étape 1. Créez une copie du fichier openssl.cnf
Connectez-vous à Hyperflex Cluster Management IP (CMIP) en utilisant SSH en tant qu'utilisateur administratif, puis passez à diag user.
HyperFlex StorageController 5.0(2a)
admin @ X.X.X.X's password:
This is a Restricted shell.
Type '?' or 'help' to get the list of allowed commands.
hxshell:~$ su diag
Password:
_____ _ _____ _ ___ ____
| ___(_)_ _____ _ |_ _| |__ _ __ ___ ___ _ / _ \ _ __ ___ / ___| _____ _____ _ __
| |_ | \ \ / / _ \ _| |_ | | | '_ \| '__/ _ \/ _ \ _| |_ | | | | '_ \ / _ \ _____ \___ \ / _ \ \ / / _ \ '_ \
| _| | |\ V / __/ |_ _| | | | | | | | | __/ __/ |_ _| | |_| | | | | __/ |_____| ___) | __/\ V / __/ | | |
|_| |_| \_/ \___| |_| |_| |_| |_|_| \___|\___| |_| \___/|_| |_|\___| |____/ \___| \_/ \___|_| |_|
Enter the output of above expression: 2
Valid captcha
diag#
Remarque : à partir de la version 5.0(2a), diag user est disponible pour permettre aux utilisateurs d'avoir plus de privilèges, si votre cluster est dans 4.5, veuillez contacter le TAC Cisco pour compléter cette procédure.
Créer un répertoire dans le dossier /tmp
Dans cet exemple, il est nommé ssl.
diag# mkdir /tmp/ssl
Modifier les autorisations de répertoire.
diag# chmod 777 /tmp/ssl
Créez une copie de openssl.cnf
Dans cet exemple, la copie de openssl.cnf est nommée openssl-san.cnf.
diag# cp /etc/ssl/openssl.cnf /tmp/ssl/openssl-san.cnf
diag# ls -l /tmp/ssl/
total 12
-rwxr-xr-x 1 diag diag 10835 Aug 3 21:39 openssl-san.cnf
Étape 2. Modifier le fichier openssl-san.cnf
Créez un répertoire sur votre machine Linux locale pour copier le contenu openssl-san.cnf à partir de CMIP .
Modifiez le contenu du fichier sur votre machine Linux.
Remarque : openssl-san.cnf peut être modifié sous SCVM avec vi.
Supprimez les commentaires de la ligne req-extensions dans la section [ req ].
Supprimez le symbole # de la ligne.
Ajoutez le nom alternatif du sujet (SAN) dans la section [ v3_req ].
Ajoutez les lignes SAN dans la section [ v3_req ]. Assurez-vous d'ajouter toutes les machines virtuelles de contrôleur de stockage (SCVM) et le nom de domaine complet (FQDN) du cluster Hyperflex.
Remarque : Chrome ne prend plus en charge l'utilisation de Common Name et exige désormais que Subject Alternative Names (SAN) soit présent dans le certificat.
Remarque : le serveur DNS doit résoudre toutes les SCVM de votre cluster.
Étape 3. Créer le certificat
Étape 3a. Création de la CSR
À partir de votre machine Linux, exécutez la commande :
openssl req -nodes -newkey rsa:2048 -keyout /
/
.key -out /
/
.csr -config /
/openssl-san.cnf
user$ openssl req -nodes -newkey rsa:2048 -keyout /Users/user/Documents/SpringpathController5NQ1FDLLEH.key -out /Users/user/Documents/SpringpathController5NQ1FDLLEH.csr -config /Users/user/Documents/openssl-san.cnf
Generating a 2048 bit RSA private key
..........................+++++
.....................................................................................................+++++
writing new private key to '/tmp/ssl/SpringpathControllerM7L9J9RO04.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:MX
State or Province Name (full name) [Some-State]:CDMX
Locality Name (eg, city) []:Benito Juarez
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Cisco Systems
Organizational Unit Name (eg, section) []:TAC
Common Name (e.g. server FQDN or YOUR name) []:Monterrey.mxsvlab.com
Email Address []:
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:Cisco Systems
Deux fichiers sont générés après l'exécution de la commande : .key et .csr.
user$ ls -l
total 54
-rw-r--r--@ 1 user staff 1549 Aug 3 14:24 SpringpathControllerM7L9J9RO04.csr
-rw-r--r-- 1 user staff 1704 Aug 3 14:24 SpringpathControllerM7L9J9RO04.key
-rw-r--r-- 1 user staff 11193 Aug 3 14:19 openssl-san.cnf
Étape 3b. Créer un certificat à partir de l'autorité de certification
Accédez à http://<CA-IP>/certsrv/certrqxt.asp
Copiez le contenu du fichier <Host Name of the CVM>.csr et collez-le dans votre autorité de certification (CA).
Sélectionnez Serveur Web sous Modèle de certificat.
Tapez les noms ALT au format suivant dans Attributs.
san:dns=
&dns=
&dns=
&dns=
Cliquez sur Envoyer pour générer le certificat en tant que fichier .cer
Remarque : assurez-vous que le type de certificat est un serveur Web et que le champ Attributs comporte des noms ALT.
Remarque : le contenu du CSR X.509 est saisi par l'utilisateur. Il n'y a pas de vérification du contenu de l'entrée. Si vous spécifiez les [plusieurs] noms d'hôte ou adresses IP des noeuds comme noms de substitution d'objet, ou si vous utilisez le caractère générique pour spécifier le nom d'hôte du nom commun, un seul certificat peut être utilisé pour tous les noeuds
Étape 4. Convertir le certificat de .cer en .crt
Copiez le certificat .cer sur votre machine Linux locale
Sur votre machine Linux locale, exécutez la commande suivante :
openssl x509 -inform PEM -in certnew.cer -out certnew.crt
user$ openssl x509 -inform PEM -in certnew.cer -out certnew.crt
user$ ls -l
total 56
-rw-r--r--@ 1 user staff 1549 Aug 3 14:24 SpringpathControllerM7L9J9RO04.csr
-rw-r--r-- 1 user staff 1704 Aug 3 14:24 SpringpathControllerM7L9J9RO04.key
-rw-r--r--@ 1 user staff 2380 Aug 3 15:03 certnew.cer
-rw-r--r-- 1 user staff 2342 Aug 3 15:04 certnew.crt
-rw-r--r-- 1 user staff 11193 Aug 3 14:19 openssl-san.cnf
Étape 5. Importez le certificat.
Téléchargez les fichiers .key et .crt de votre machine virtuelle Linux locale vers /tmp/ssl sur le CMIP.
Remarque : vous pouvez utiliser SCP pour copier les fichiers dans le SCVM
diag# ls -l
total 20
-rw-r--r-- 1 admin springpath 1704 Aug 3 22:46 SpringpathControllerM7L9J9RO04.key
-rw-r--r-- 1 admin springpath 2342 Aug 3 22:46 certnew.crt
-rwxr-xr-x 1 diag diag 10835 Aug 3 21:39 openssl-san.cnf
Exécuter cette commande
diag# /usr/share/springpath/storfs-misc/hx-scripts/certificate_import_input.sh
Enter the path for the key: /tmp/ssl/SpringpathControllerM7L9J9RO04.key
Enter the path for the certificate in crt format: /tmp/ssl/certnew.crt
Successfully installed certificate
The cluster needs to be re-registered with vCenter for the certificate import to be completed.
Do you want to continue with re-registration? (y/n): y
Enter vCenter username (user@domain): administrator @ vsphere.local
Enter vCenter Password:
Trying to retrieve vCenter information ....
Cluster re-registration in progress ....
Cluster re-registered successfully with vCenter !!
Remarque : une nouvelle inscription vCenter est requise. Envoyez les identifiants administrateur.
Vérifier
Vérifiez que vous disposez d'une connexion sécurisée après avoir importé le certificat.
Dépannage
Certificat non valide avec IP.
L'utilisation de SCVM IP ne dispose pas d'une connexion sécurisée car le certificat est généré avec des FQDN.
Lorsque vous utilisez le nom de domaine complet, vous disposez d'une connexion sécurisée.
Informations connexes