SSL証明書を更新するときにチェックに役立つコマンドまとめ

すっかり秋めいてきて、ご飯が美味しい季節になりましたね、shige でございます。

さて、今回はSSL証明書を更新するときにチェックに役立つコマンドをまとめてみました。
この手順に沿って、サーバーに新しいSSL証明書を置き換えれば、きっと証明書と秘密鍵の不整合で Apache が起動しないなんてトラブルも逃れられるはず!

1. 秘密鍵とCSRの作成

まず、お馴染みの openssl コマンドでサクッと秘密鍵とCSRを作成します。

$ openssl req -new -newkey rsa:2048 -nodes -keyout www.webimpact.co.jp.key -out www.webimpact.co.jp.csr

2. 認証局へ提出

次に、いつもお世話になっている認証局にCSRを提出しましょう。

3. サーバーに証明書と秘密鍵を設置

認証局から証明書を発行してもらえたら、サーバに「SSL証明書」と「秘密鍵」を設置します。

SSL証明書や秘密鍵を正しい組合せで設置できているかは、下記のコマンドで確認できます。

正しい組合せなら、出力結果が全て同じになるはずです。

もし、違う場合は、Apache 再起動時にエラーになってしまい、サービスを停止させることになってしまうので、がんばって正しい組合せで設置しましょう。

$ openssl x509 -noout -modulus -in www.webimpact.co.jp.crt | openssl md5
e6fs34fvgs4sg6df3t0eh3453h531h35
$ openssl rsa -noout -modulus -in www.webimpact.co.jp.key | openssl md5
e6fs34fvgs4sg6df3t0eh3453h531h35
$ openssl req -noout -modulus -in www.webimpact.co.jp.csr | openssl md5
e6fs34fvgs4sg6df3t0eh3453h531h35

また、証明書の期限も確認しておきます。

$ openssl x509 -in www.webimpact.co.jp.crt -noout -dates
notBefore=Jun 20 10:51:23 2012 GMT
notAfter=Aug 22 14:35:30 2015 GMT

他にも下記のコマンドで、証明書の内容を確認することができます。

$ openssl x509 -in www.webimpact.co.jp.crt -text

次に、Apacheの設定ファイル httpd.conf を編集した場合は、サーバを再起動する前に設定ファイルの文法チェックを行います。

$ apachectl configtest
Syntax OK

httpd.conf が問題なさそうでしたら、最後に Apache を再起動します。

$ httpd restart

4. ブラウザから確認

何事もなければ、ブラウザからSSL証明書を確認します。

「発行日」や「有効期限」が最新の状態になっていれば、SSL証明書の更新作業は完了です。

お疲れ様でした!

[参考] : SSL証明書ペア確認コマンド