Comment recréer des certificats TLS et les configurer dans Prisma Cloud Compute Console ?

Comment recréer des certificats TLS et les configurer dans Prisma Cloud Compute Console ?

5968
Created On 09/19/23 08:57 AM - Last Modified 01/03/25 05:05 AM


Objective


Nous avons souvent rencontré des problèmes où les certificats de calcul TLS ne peuvent pas être configurés en raison d'échecs dans le processus de génération/signature des certificats TLS . Par conséquent, cet article est destiné à aider et à clarifier les étapes impliquées dans la génération de certificats et la façon de les configurer dans l'interface utilisateur de calcul. Veuillez noter que ces certificats sont des autorités de certification auto-signées, ce qui signifie qu'ils ne sont pas signés par une autorité reconnue. Par conséquent, ils ne sont pas installés dans les navigateurs par par défaut, c'est pourquoi vous pouvez rencontrer un avertissement «certificat non approuvé ».

Environment


  • Prisma Cloud auto-hébergé



Procedure


  1. Firstly, in order to do all of these things, we need to have openssl installed in our host.

    image.png

Certificats à recréer :

  • console-cert.pem

  • clé de console.pem

Répertoire cible : /var/lib/twistlock/custom-certificates

Pour les besoins de cette instruction, avant d’être transférés vers les répertoires cibles, tous les fichiers seront créés et stockés dans un dossier différent.

mkdir /var/lib/twistlock/certs-new
cd /var/lib/twistlock/certs-new
  1. Prérequis :

Afin de signer les certificats, il est nécessaire de créer les fichiers utilisés par l'Autorité de Certification :

  • req_ca
  • san.cnf
  • extFile.ext

Veuillez trouver le contenu du fichier dans les sections suivantes :

  • req_ca (exigences CA )
echo "[ req ]
default_bits = 4096
default_md = sha256
distinguished_name = req_distinguished_name
x509_extensions = req_ext
prompt = no
[ req_distinguished_name ]
C=US
ST=CA
O=MyOrg, Inc.
CN=rootCA
[ req_ext ]
basicConstraints = critical, CA:true" >req_ca
  • Subject Alternative Name (autre nom de l'objet - SAN) (san.cnf)
echo "[req]
default_bits = 2048
distinguished_name = req_distinguished_name
req_extensions = req_ext
x509_extensions = x509_ext
prompt = no
[ x509_ext ]
subjectKeyIdentifier = hash
authorityKeyIdentifier = keyid,issuer
[ req_distinguished_name ]
C = US
ST = CA
O = MyOrg, Inc.
CN = 10.180.29.195
[ req_ext ]
basicConstraints = CA:FALSE
keyUsage = digitalSignature, keyEncipherment
subjectAltName = @alt_names
[alt_names]
IP.1 = 10.180.29.195
IP.2 = 127.0.0.1" >san.cnf

  • extFile.ext
echo "[req]
basicConstraints = CA:FALSE
keyUsage = digitalSignature, keyEncipherment
subjectAltName = @alt_names
[alt_names]
IP.1 = 10.180.29.195
IP.2 = 127.0.0.1"> extFile.ext

  1. Création d'une autorité de certification
  • Création d'une CA auto-signée :

Générer une clé privée pour le certificat CA

openssl genrsa -out MyCA-key.pem

Créez un certificat CA auto-signé à l'aide de la clé ci-dessus

openssl req -x509 -new -nodes -key MyCA-key.pem -sha256 -days 1825 -out MyCA-cert.pem -config req_ca

Nous avons maintenant notre propre certificat CA avec lequel nous signerons d’autres demandes de certificat

Souviens-toi

MyCA-key.pem est simplement la clé privée CA
MyCA-cert.pem est le certificat CA auto-signé utilisant MyCA-key.pem comme clé privée

  1. Cryptage du certificat utilisateur

Clé privée pour le cryptage du certificat utilisateur

openssl genrsa -out user-key.pem 2048

Créer une requête de certificat

openssl req -new -config san.cnf -key user-key.pem -out user-request.pem

Nous avons maintenant notre propre requête de certificat signée par notre propre clé privée pour le cryptage du certificat utilisateur

  1. Signature du certificat utilisateur par l'autorité CA
  • Signez la requête de certificat utilisateur avec l' CA créée (MyCA-cert.pem) à l'aide de sa clé privée créée (MyCA-key.pem)
  • Clé privée pour le cryptage du certificat utilisateur
openssl x509 -req -in user-request.pem -CA MyCA-cert.pem -CAkey MyCA-key.pem -CAcreateserial -days 1825 -sha256
-extfile extFile.ext -extensions req -outform PEM -out user-cert.pem
  1. Création de tous les certificats nécessaires pour les certificats personnalisés
  • Certificats de la console HTTP :
  • Créer une clé privée HTTPS (MyCA-key-https.pem)
openssl genrsa -out MyCA-key-https.pem

  • Créez un certificat CA auto-signé HTTPS (MyCA-cert-https.pem) à l'aide de la clé ci-dessus
openssl req -x509 -new -nodes -key MyCA-key-https.pem -sha256 -days 1 -out MyCA-cert-https.pem -config req_ca

  • Créer une clé privée de console (console-key.pem)
openssl genrsa -out console-key.pem 2048
  • Créez un certificat de console (console-cert.pem) en utilisant la clé privée ci-dessus

openssl req -new -config san.cnf -key console-key.pem -out user-request.pem
openssl x509 -req -in user-request.pem CA MyCA-cert-https.pem -CAkey MyCA-key-https.pem -CAcreateserial -days
1 -sha256 -extfile extFile.ext -extensions req -outform PEM -out console-cert.pem
chmod 777 touche-console.pem

  1. Configuration de la console Twistlock pour les certificats personnalisés
  • Créer un dossier custom-certificates :
mkdir /var/lib/twistlock/custom-certificates
  • Copiez ou déplacez les certificats créés dans le répertoire « custom-certificates » :
pwd
ls -la
cp * /var/lib/twistlock/custom-certificates/
ls -la /var/lib/twistlock/custom-certificates/
  • Redémarrez la console Docker :
docker ps
docker restart twistlock_console
docker ps
  1. Vérifier les certificats de la console Docker
  • Accédez à la console Docker et vérifiez qu’il existe bien un dossier avec des certificats personnalisés :
docker ps
docker exec -ti <docker_console_container_id> bash
ls -la /var/lib/twistlock/
ls -la /var/lib/twistlock/custom-certificates
  1. Vérification du certificat personnalisé dans la console

Accédez à Gérer > Journaux > Console, recherchez des certificats personnalisés et recherchez des certificats

image.png



Additional Information


Documentation de référence :

Actions
  • Print
  • Copy Link

    https://knowledgebase.paloaltonetworks.com/KCSArticleDetail?id=kA14u000000XgYECA0&lang=fr&refURL=http%3A%2F%2Fknowledgebase.paloaltonetworks.com%2FKCSArticleDetail

Choose Language