opensslコマンドでSSL/TLS証明書の中身を確認する
|
openssl
コマンドでSSL/TLS証明書の中身をすることができます。
issuerの情報や証明書の更新期日などをパパッと確認したい時に便利で、稀に使います(今日久しぶりに使いました)。
しばらく経つと忘れてしまうので、今後はこの記事を見て確認できるようにしたいなと、思いました。
opensslコマンド
↓こんな感じで使います。
openssl x509 -in hogehoge-mogumogu.com.crt -text
証明書はサーバ証明書と中間証明書、鍵ファイルの3種類あり、それぞれ確認の仕方が微妙に異なります。
# サーバー証明書と中間証明書のチェック
openssl x509 -in hogehoge-mogumogu.com.crt -text
# 秘密鍵のチェック
openssl rsa -in hogehoge-mogumogu.com.key -text
証明書の組み合わせを確認する
秘密鍵はあまり開かないかもしれませんが、証明書の組み合わせが正しいかチェックしたい、というケースはあるかもしれません。
その場合は下記のようにチェックします。
サーバー証明書と中間証明書のチェック
サーバー証明書のsubjectと中間証明書のissuerが一致すれば正しい組み合わせであることがわかります。逆に一致しなければ正しくない組み合わせとなります。
# サーバー証明書のsubjectと中間証明書のissuerの確認
openssl x509 -subject_hash -noout -in INCRT.crt
openssl x509 -issuer_hash -noout -in CRT.crt
サーバー証明書と秘密鍵のチェック
サーバー証明書に含まれている公開鍵と、CSR作成に使用した秘密鍵が一致すればOK、一致しなければNGとなります。
サーバー証明書に含まれている公開鍵と、CSR作成に使用した秘密鍵のチェック
openssl rsa -noout -modulus -in KEY.key | openssl md5
openssl x509 -noout -modulus -in CRT.crt | openssl md5
まとめ
opensslコマンドの小技をまとめました。やったね!