Wie erstellen wir TLS -Zertifikate neu und konfigurieren sie in der Prisma Cloud Compute Console?

Wie erstellen wir TLS -Zertifikate neu und konfigurieren sie in der Prisma Cloud Compute Console?

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


Objective


Wir haben häufig Probleme festgestellt, bei denen TLS -Compute-Zertifikate aufgrund von Fehlern beim Generieren/Signieren von TLS -Zertifikaten nicht konfiguriert werden konnten. Daher soll dieser Artikel helfen und Erläuterungen zu den Schritten zum Generieren von Zertifikaten und zu ihrer konfigurieren in der Compute-Benutzeroberfläche liefern. Bitte beachten Sie, dass es sich bei diesen Zertifikaten um selbstsignierte Zertifizierungsstellen handelt, was bedeutet, dass sie nicht von einer anerkannten Zertifizierungsstelle signiert wurden. Daher werden sie Standard(-) nicht in Browsern installiert, weshalb möglicherweise die Warnung „Zertifikat nicht vertrauenswürdig“ angezeigt wird.

Environment


  • Prisma Cloud selbst gehostet



Procedure


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

    image.png

Nachzubildende Zertifikate:

  • konsole-cert.pem

  • Konsolenschlüssel.pem

Zielverzeichnis: /var/lib/twistlock/custom-certificates

Im Rahmen dieser Anleitung werden alle Dateien vor der Übertragung in die Zielverzeichnisse erstellt und in einem separaten Ordner abgelegt.

mkdir /var/lib/twistlock/certs-new
cd /var/lib/twistlock/certs-new
  1. Voraussetzungen:

Um die Zertifikate zu signieren, müssen die von der Zertifizierungsstelle verwendeten Dateien erstellt werden:

  • req_ca
  • san.cnf
  • extFile.ext

Den Dateiinhalt finden Sie in den folgenden Abschnitten:

  • req_ca (CA Anforderungen)
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 (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. Erstellen einer Zertifizierungsstelle
  • Erstellen einer selbstsignierten CA:

Privaten Schlüssel für CA Zertifikat generieren

openssl genrsa -out MyCA-key.pem

Erstellen Sie ein selbstsigniertes CA Zertifikat mit dem obigen Schlüssel

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

Jetzt haben wir unser eigenes CA Zertifikat , mit dem wir andere Zertifikat signieren

Erinnern

MyCA-key.pem Ist nur der private CA Schlüssel
MyCA-cert.pem ist das selbstsignierte CA Zertifikat mit MyCA-key.pem als privatem Schlüssel

  1. Verschlüsselung des Zertifikat

Privater Schlüssel zur Benutzer

openssl genrsa -out user-key.pem 2048

Erstellen einer Zertifikat

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

Jetzt haben wir unsere eigene Zertifikat , die mit unserem eigenen privaten Schlüssel für die Zertifikat Benutzer ist

  1. Signieren des Benutzer durch die CA Zertifikat
  • Signieren Sie die Benutzer mit der erstellten CA (MyCA-cert.pem) und verwenden Sie dazu den erstellten privaten Schlüssel (MyCA-key.pem).
  • Privater Schlüssel zur Benutzer
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. Erstellung aller benötigten Zertifikate für benutzerdefinierte Zertifikate
  • HTTP Konsolenzertifikate:
  • Privaten HTTPS Schlüssel erstellen (MyCA-key-https.pem)
openssl genrsa -out MyCA-key-https.pem

  • Erstellen Sie ein HTTPS selbstsigniertes CA Zertifikat (MyCA-cert-https.pem) mit dem obigen Schlüssel
openssl req -x509 -new -nodes -key MyCA-key-https.pem -sha256 -days 1 -out MyCA-cert-https.pem -config req_ca

  • Erstellen Sie einen privaten Konsolenschlüssel (console-key.pem).
openssl genrsa -out console-key.pem 2048
  • Erstellen Sie ein Zertifikat (console-cert.pem) mit dem oben genannten privaten Schlüssel

openssl req -new -config san.cnf -key console-key.pem -out Benutzeranforderung.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 Konsolenschlüssel.pem

  1. Twistlock-Konsolenkonfiguration für benutzerdefinierte Zertifikate
  • Erstellen Sie einen Ordner mit benutzerdefinierten Zertifikaten:
mkdir /var/lib/twistlock/custom-certificates
  • Kopieren oder verschieben Sie die erstellten Zertifikate in das Verzeichnis „custom-certificates“:
pwd
ls -la
cp * /var/lib/twistlock/custom-certificates/
ls -la /var/lib/twistlock/custom-certificates/
  • Starten Sie die Docker-Konsole neu:
docker ps
docker restart twistlock_console
docker ps
  1. Überprüfen Sie die Zertifikate der Docker-Konsole
  • Greifen Sie auf die Docker-Konsole zu und überprüfen Sie, ob tatsächlich ein Ordner mit benutzerdefinierten Zertifikaten vorhanden ist:
docker ps
docker exec -ti <docker_console_container_id> bash
ls -la /var/lib/twistlock/
ls -la /var/lib/twistlock/custom-certificates
  1. Benutzerdefiniertes Zertifikat in der Konsole prüfen

Gehen Sie zu Verwalten > Protokolle > Konsole, suchen Sie nach benutzerdefinierten Zertifikaten und suchen Sie nach Zertifikaten

image.png



Additional Information


Referenzdokumentation:

Actions
  • Print
  • Copy Link

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

Choose Language