TLS証明書を再作成し、Prisma Cloud Compute Console でコンフィグにはどうすればよいですか?
Objective
TLS証明書の生成/署名のプロセスで障害が発生したために、 TLSコンピューティング証明書を構成できないという問題が頻繁に発生しています。そのため、この記事は、証明書の生成手順と、Compute UI で証明書をコンフィグ方法について説明し、支援することを目的としています。これらの証明書は自己署名 CA であり、公認機関によって署名されていないことに注意してください。そのため、デフォルトではブラウザーにインストールされません。そのため、「証明書が信頼されていません」という警告が表示される場合があります。
Environment
-
Prisma Cloud セルフホスト
Procedure
- Firstly, in order to do all of these things, we need to have
opensslinstalled in our host.
再作成する証明書:
-
コンソール証明書.pem
- コンソールキー.pem
ターゲットディレクトリ: /var/lib/twistlock/custom-certificates
この手順では、ターゲット ディレクトリに転送される前に、すべてのファイルが作成され、別のフォルダーに保存されます。
mkdir /var/lib/twistlock/certs-new cd /var/lib/twistlock/certs-new
- 前提条件:
証明書に署名するには、証明機関が使用するファイルを作成する必要があります。
- 必要
- san.cnf
- extファイル.ext
ファイルの内容は次のセクションにあります。
- req_ca (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 (サブジェクトの別名 - 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
- extファイル.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
- 認証局の設立
- 自己署名CAの作成:
CA証明書の秘密鍵を生成する
openssl genrsa -out MyCA-key.pem
上記のキーを使用して自己署名CA証明書を作成する
openssl req -x509 -new -nodes -key MyCA-key.pem -sha256 -days 1825 -out MyCA-cert.pem -config req_ca
これで、他の証明書要求に署名するための独自のCA証明書ができました。
覚えて
MyCA-key.pem はCAの秘密鍵です
MyCA-cert.pemはMyCA-key.pemを秘密鍵として使用する自己署名CA証明書です。
- ユーザー証明書の暗号化
ユーザー証明書の暗号化のための秘密鍵
openssl genrsa -out user-key.pem 2048
証明書要求を作成する
openssl req -new -config san.cnf -key user-key.pem -out user-request.pem
これで、ユーザー証明書の暗号化のために独自の秘密鍵で署名された独自の証明書要求ができました。
- CA機関によるユーザー証明書の署名
- 作成したCA (MyCA-cert.pem) とその秘密鍵 (MyCA-key.pem) を使用して、ユーザー証明書要求に署名します。
- ユーザー証明書の暗号化のための秘密鍵
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
- カスタム証明書に必要なすべての証明書の作成
- HTTPコンソール証明書:
- HTTPS秘密鍵 (MyCA-key-https.pem) を作成する
openssl genrsa -out MyCA-key-https.pem
- 上記のキーを使用して、 HTTPS自己署名CA証明書(MyCA-cert-https.pem) を作成します。
openssl req -x509 -new -nodes -key MyCA-key-https.pem -sha256 -days 1 -out MyCA-cert-https.pem -config req_ca
- コンソール秘密鍵 (console-key.pem) を作成する
openssl genrsa -out console-key.pem 2048
- 上記の秘密鍵を使用してコンソール証明書(console-cert.pem)を作成します。
openssl req -new -config san.cnf -key コンソールキー.pem -out ユーザーリクエスト.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 コンソールキー.pem
- カスタム証明書のTwistlockコンソール構成
- フォルダー custom-certificates を作成します。
mkdir /var/lib/twistlock/custom-certificates
- 作成した証明書を「custom-certificates」ディレクトリにコピーまたは移動します。
pwd ls -la cp * /var/lib/twistlock/custom-certificates/ ls -la /var/lib/twistlock/custom-certificates/
- Docker コンソールを再起動します。
docker ps docker restart twistlock_console docker ps
- Dockerコンソールの証明書を確認する
- Docker コンソールにアクセスし、カスタム証明書を含むフォルダーが実際に存在することを確認します。
docker ps docker exec -ti <docker_console_container_id> bash ls -la /var/lib/twistlock/ ls -la /var/lib/twistlock/custom-certificates
- コンソールでカスタム証明書を確認する
管理 > ログ > コンソールに移動し、カスタム証明書を検索して証明書を検索します。
Additional Information
参照ドキュメント: