自己証明書作成手順
自己認証局署名鍵・証明書作成
openssl req \
-new \
-out ca.crt \
-keyout ca.key \
-x509 \
-days 3650 \
-newkey rsa:2048 \
-nodes \
-subj "/CN=PrivateCA"
サーバ証明書作成
-
CSR
-
Subject Alternative Name の準備
ここでは
san_server.txt
とします。 -
CSR へ署名
-
作成した証明書の確認
-
p12 形式ファイルの作成
クライアント証明書作成
-
CSR
-
Subject Alternative Name の準備
ここでは
san_client.txt
とします。 -
CSR へ署名
-
作成した証明書の確認
-
p12 形式ファイルの作成
自己 CA を信頼する CA リストに追加する
-
Ubuntu Linux
この後、
/etc/ssl/certs/privateca.pem
が存在するはずです。 -
Python (Requests ライブラリだけかもですが)
Python では OS の信頼する CA リストは参照せず、
/usr/lib/python3/dist-packages/certifi/cacert.pem
またはvenv/lib/python3.10/site-packages/certifi/cacert.pem
のような、Python環境の信頼する CA リストを参照しているようです。
このファイルに PrivateCA の証明書を追加すると requests が PrivateCA を信頼するようになります。