OpenSSLを使用したSSLCertificateChainFileの確認

OpenSSLを使用したSSLCertificateChainFileの確認

他の証明書では、SSLCertificateChainFileを検証する方法がわからず、クライアントサーバーでこの問題が発生しました。 SSL証明書キーとそのファイル(.crt、.key)を含むフォルダがあります。また、my.example.comサイトのSSLCertificateFileとSSLCertificateKeyFileも知っています。私はそれらの間のMD5ハッシュを確認しました。

openssl x509 -noout -modulus -in my-exam.crt| openssl md5
(stdin)= d41d8cd98f00b204e9800998ecf8427e

openssl rsa -noout -modulus -in my-exam.key | openssl md5
(stdin)= d41d8cd98f00b204e9800998ecf8427e

他の証明書ファイルには異なる名前がありますmy-exam

私の質問は:SSLCertificateFileとSSLCertificateKeyFileを既に知っている場合は、OpenSSLを使用して他の証明書ファイルの中でSSLCertificateChainFileを見つける方法は?

答え1

for ループを作成します。

for file in  *.pem; do
     if  openssl verify -CAfile "$file" my-exam.crt>/dev/null 2>&1; then
          echo "Chainfile:$file";
     fi;
done

例えば。出力:

Chainfile:ca_chain.pem

チェーンファイルがpem形式であると仮定し、それ以外の場合はforループで変更します。

答え2

短い研究の最後に、SSLCertificateFileとSSLCertificateKeyFileに関してSSLCertificateChainFileをチェックする方法を見つけました。 OpenSSL は、証明書を検証する際に最初に証明書チェーン全体を生成します。次のコマンド

sudo openssl verify -verbose -CAfile sf_bundle.crt my-exam.crt私のSSLCertificateChainFile()を検証するのに役立ちますsf_bundle.crt

出力は次のようになります。my-exam.crt: ok

他の.crtファイルではエラーのみが発生します。

関連情報