なつねこメモ

主にプログラミング関連のメモ帳 ♪(✿╹ヮ╹)ノ 書いてあるコードは自己責任でご自由にどうぞ。記事本文の無断転載は禁止です。

Public Beta になった Let' Encrypt で証明書を発行してみる その2

一週間ほど前に書いた記事の続きというかなんというか。

ドメインの所有を確かめるために、 Web サーバーを止めるのは困るので、
~すでに誰かが書いただろうけど~止めずに認証を行う方法をメモしておきます。

ちなみに前の記事はこちら:

Public Beta になった Let's Encrypt で証明書を発行してみる


すでにインストール済みであることを前提に。
条件はこちら

  • nginx
  • example.com と docs.example.com を認証したい
  • ルートパスは /srv/example.com/srv/docs.example.com

早速証明書を生成します。
前回と同じようにすればいいのですが、 --webroot オプションを付けて実行することで、
Web サーバーを起動したまま認証できます。

こんな感じ

./letsencrypt-auto certonly --webroot -w /srv/example.com/ -d example.com -w /srv/docs.example.com/ -d docs.example.com

同じルートパスで、複数ドメインの場合は

./letsencrypt-auto certonly --webroot -w /srv/example.com/ -d example.com -d www.example.com

と言った感じで、続けて書けば OK です。
なおこの時、 HTTP でのアクセスを HTTPS でアクセスするようにリダイレクトさせてると
うまくいかないようです。私はダメでした。

ということで、起動したままでも認証する方法でした。

ちなみに、証明書の更新は、上のコマンドに --renew-by-default をつけることで、
途中で表示される GUI なしで、自動更新することができます。