Openssl で SSL証明書の有効期限を確認する
サーバー側のSSL証明書の有効期限を確認する
証明書の有効期限を確認するには、ブラウザでURLを指定してアクセスして証明書の有効期限を確認できます。
CentOS 等で「openssl」コマンドで使用できる場合は、以下のコマンドSSL証明書の有効期限を確認できます。
書式:openssl s_client -connect “ドメイン名":443 < /dev/null 2> /dev/null | openssl x509 -text | grep “Not"
$ openssl s_client -connect "example.com:443 < /dev/null 2> /dev/null | openssl x509 -text | grep "Not" Not Before: Nov 12 00:00:00 2018 GMT Not After : Jan 10 12:00:00 2021 GMT
証明書の有効期限に関してですが、証明書の発行日は「Not Before:」で失効日は「Not After : 」で確認できます
Not Before: Nov 12 00:00:00 2018 GMT (証明書の発行日)
Not After : Jan 10 12:00:00 2021 GMT(証明書の失効日)
ローカルファイルのSSL証明書の有効期限を確認する
サーバーのローカルにあるファイルで、証明書を確認するには以下のコマンドで確認できます
書式:openssl x509 -noout -text -in “サーバー証明書ファイルのフルパス" | grep “Not"
# openssl x509 -noout -text -in "/etc/letsencrypt/live/example.com/cert.pem" | grep "Not" Not Before: Nov 12 00:00:00 2018 GMT Not After : Jan 10 12:00:00 2021 GMT
Let’s Encryptの証明書の場合、opensslコマンドでサーバー側から見ると正しい値が取れない
opensslコマンドで確認できるですが、 Let’s Encryptの証明書の場合は、実際にブラウザで確認できる日付とopensslコマンドの日付と異なる場合はあります。全てのLet’s Encryptの証明書でそれに該当する訳ではなかったです。
このサイトではopenssl コマンドでサーバー側のURLを指定して確認すると、「Apr 30 20:03:44 2020 GMT」が失効期限になっています
$ openssl s_client -connect "ex1.m-yabe.com":443 < /dev/null 2> /dev/null | openssl x509 -text | grep "Not" Not Before: Jan 31 20:03:44 2020 GMT Not After : Apr 30 20:03:44 2020 GMT
ブラウザで確認すると、「2020/05/30」が失効期限です
サーバ証明書ファイルのファイルを指定すると失効日は「Jun 29 20:06:34 2020 GMT」となり、ブラウザと同じような日時となります。
# openssl x509 -noout -text -in /etc/letsencrypt/live/ex1.m-yabe.com/cert.pem | grep "Not" Not Before: Mar 31 20:06:34 2020 GMT Not After : Jun 29 20:06:34 2020 GMT
少し調べてみましたが原因はわかりませんでした
ディスカッション
コメント一覧
まだ、コメントがありません