SSL証明書の有効期限の見方 と 拡張子 意味



open ssl x509 -noout -text -in 'crtファイル'

Validity の NotAfter が有効期限


1.秘密鍵(Private Key)

2.証明書発行要求(CSR:Certificate Signing Request)

3.証明書(CRT: Certificate)

4.証明書執行リスト(CRL: Certification Revocation List)###

設置の時は 1 と 3 を移動させる.
中間証明書CA.crt がある場合はこれも移動させる、

そして CRTとCA.crt はマージさせる(※順番関係有り).中間証明書が下にくる.

CSR作成手順

linuxでは /etc/ssl などにある。
拡張子自体に意味はなく、わかりやすいように付けているだけである。

ブラウザで確認する発行対象の情報は適当なので当てにしない。


openssl req -new -key 秘密鍵ファイル名 -out CSRファイル名

これの作成したCSR(証明書発行要求)を使って証明書発行を要求することでSSL証明書を入手できる。つまり、SSL証明書更新とは次の様な3つの段階の作業に分けることができる。CSR作成、証明書発行要求、証明書設置。
作成の際のディスティングイッシュネームはユニット名は適当なものでよく、EmailAddress以降は空欄でよい。その他は正式な入力が必要である。
http://d.hatena.ne.jp/tkrd/20120531/1338450030

受け取った証明書を設置することがSSL証明書設置の設定である。

linuxコマンドで証明書の設置がうまくできているか確認


$ openssl s_client \
-CAfile /usr/share/ca-certificates/mozilla/Equifax_Secure_CA.crt -showcerts -connect www.example.com:443

出力の最後の方に[Verify return code: 0 (ok)]とでていれば問題ない。
上の方にある、 Certificate chainの部分で証明書の連鎖を確認できる。

※Nginxの設定をしているサーバー以外で確認をする。実験用のIPを用いる場合は/etc/hostsの書き換えを忘れずに!

何故コマンドで確認する必要があるのかというと、例えば今回必要になった例ではWEBサイトをアンドロイドでみた場合だけ警告が出るというものであった。このような問題に気づかないものなので、SSL証明書の設置の際にはブラウザチェックだけでなく、上記のコマンドを用いて確認すべき。