警告:否定的なケースを確認してください。

警告:否定的なケースを確認してください。

新しいCA証明書がクライアントにプッシュされるにつれて、証明書チェーンをダウンロードしてローカルで確認しようとします。基本的に、どのウェブサイトが特定の時間に機能しているかを把握することです。次のコマンドを使用してチェーンをダウンロードします。

echo -n | openssl s_client -showcerts -connect example.com:443 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > mycert.pem

ただし、それを使用すると、openssl verify次のエラーメッセージが表示されます。

root@host:~# openssl version 
OpenSSL 1.1.0e  16 Feb 2017

root@host:~# echo -n | openssl s_client -showcerts -connect example.com:443 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > mycert.pem 
depth=2 C = US, O = DigiCert Inc, OU = www.digicert.com, CN = DigiCert Global Root CA
verify return:1
depth=1 C = US, O = DigiCert Inc, CN = DigiCert SHA2 Secure Server CA
verify return:1
depth=0 C = US, ST = California, L = Los Angeles, O = Internet Corporation for Assigned Names and Numbers, OU = Technology, CN = www.example.org
verify return:1
DONE


root@host:~# openssl verify mycert.pem 
C = US, ST = California, L = Los Angeles, O = Internet Corporation for Assigned Names and Numbers, OU = Technology, CN = www.example.org
error 20 at 0 depth lookup: unable to get local issuer certificate
error mycert.pem: verification failed

これらの証明書チェーンをオフラインで確認する正しい方法は何ですか?

ベストアンサー1

確認したい証明書をあるファイルに入れ、チェーンを別のファイルに入れる必要があります。

openssl verify -CAfile chain.pem mycert.pem

もちろん、opensslchain.pemにルート証明書が含まれていない場合は、ルート証明書を見つける方法を知ることも重要です。これを行う必要がある場合(独自のCAを使用している場合)、次の場所にある代替ディレクトリを指定することもできます。-CApath

おすすめ記事