独自のOCSPレスポンダーをセットアップしたい(テスト目的のみ)。これには、ルート証明書とそれから生成されたいくつかの証明書が必要です。
私はopensslを使用して自己署名証明書を作成することができました。ルート証明書として使用したい。次のステップは、派生証明書を作成することです。しかし、これを行う方法に関するドキュメントを見つけることができないようです。誰が私がこの情報を見つけることができるか知っていますか?
編集
振り返ってみると、私の質問はまだ完全には答えられていません。問題を明確にするために、次のように証明書チェーンを表します。
ルート-> A-> B-> C-> ...
現在、ROOTおよびA証明書を作成できますが、より長いチェーンを作成する方法がわかりません。
ルート証明書を作成するための私のコマンドは次のとおりです。
openssl req -new -newkey rsa:1024 -nodes -out ca.csr -keyout ca.key
openssl x509 -trustout -signkey ca.key -days 365 -req -in ca.csr -out ca.pem
証明書Aは次のように作成されます。
openssl genrsa -out client.key 1024
openssl req -new -key client.key -out client.csr
openssl ca -in client.csr -out client.cer
このコマンドは、暗黙的にルート証明書に依存します。ルート証明書の場合、openssl構成ファイルで必要な情報が見つかります。
ただし、証明書Bは構成ファイルに登録されていないAのみに依存する必要があるため、前のコマンドはここでは機能しません。
証明書B以降を作成するには、どのコマンドラインを使用する必要がありますか?
編集この記事で
答えを見つけました。証明書B(チェーンA-> B)は、次の2つのコマンドで作成できます。
# Create a certificate request
openssl req -new -keyout B.key -out B.request -days 365
# Create and sign the certificate
openssl ca -policy policy_anything -keyfile A.key -cert A.pem -out B.pem -infiles B.request
openssl.cnfファイルも変更しました。
[ usr_cert ]
basicConstraints=CA:TRUE # prev value was FALSE
このアプローチはうまく機能しているようです。