ウェブサイトのSSL証明書の有効期限を定期的にチェックすることは、セキュリティ管理の重要な一環です。証明書の有効期限が切れると、ブラウザで警告が表示され、ユーザーの信頼を損なう可能性があります。本記事では、外部からSSL証明書の有効期限を確認する方法を紹介します。
1. OpenSSLを使用する方法
LinuxやMacでは、openssl
コマンドを使用してSSL証明書の有効期限を取得できます。以下のコマンドを実行してください。
echo | openssl s_client -servername example.com -connect example.com:443 2>/dev/null | openssl x509 -noout -dates
サンプル出力
echo | openssl s_client -servername analyzegear.co.jp -connect analyzegear.co.jp:443 2>/dev/null | openssl x509 -noout -dates
notBefore=Feb 13 09:07:41 2025 GMT
notAfter=May 14 09:07:40 2025 GMT
このコマンドでは、notBefore
が証明書の開始日、notAfter
が証明書の有効期限を示します。
2. curlを使用する方法
curl
コマンドを使って、SSL証明書の有効期限を取得することも可能です。
2-1. --insecure オプションを使用する
以下のコマンドを実行すると、証明書の有効期限が表示されます。
curl --insecure --verbose https://example.com 2>&1 | grep "expire date"
サンプル出力
curl --insecure --verbose https://analyzegear.co.jp 2>&1 | grep "expire date"
* expire date: May 14 09:07:40 2025 GMT
expire date
に続く日付が証明書の有効期限です。
2-2. --cert-status オプションを使用する
curl
の --cert-status
オプションを使用すると、OCSP(Online Certificate Status Protocol)を利用して証明書の状態を確認できます。
curl --cert-status -v https://example.com 2>&1 | grep "expire date"
サンプル出力
curl --cert-status -v https://analyzegear.co.jp 2>&1 | grep "expire date"
* expire date: May 14 09:07:40 2025 GMT
この方法では、証明書のOCSPステータスをチェックしながら有効期限を取得できます。ただし、すべてのサーバーがOCSPステープリングをサポートしているわけではないため、結果が取得できない場合もあります。
まとめ
SSL証明書の有効期限を確認する方法として、以下の3つのアプローチを紹介しました。
- OpenSSLを使用する方法 → シンプルで確実
- curlの
--insecure
オプションを使用する方法 → 証明書の有効期限を素早く確認可能 - curlの
--cert-status
オプションを使用する方法 → OCSPを利用して証明書のステータスと期限を取得
定期的にこれらの方法を使って証明書の有効期限をチェックし、証明書の更新漏れを防ぎましょう!
コメント