その(2)ではstandaloneモードで証明書を取得しましたが、Webサーバ(httpd)を停止しないといけませんでした。私のサイトのような一時的に止まっていても問題ないサイトならよいのですが、少しでもダウンタイムがあると問題があるような重要なサイトで毎回サーバーを止めるのはよろしくありません。
そこでwebrootモードという、Webサーバを動かしっぱなしでも証明書が取得できるモードがあるようなので試してみました。
ルート権限に変更、ディレクトリの移動 (ルート権限はいりませんが、ディレクトリをrootユーザ直下に作ってしまったので)
$ sudo -i
# cd letsencrypt
Let’s Encryptクライアントをwebrootモードで実行 (-w は自分のサーバーのWeb root、-d は自分のサイトのドメイン)
# ./letsencrypt-auto certonly –renew-by-default –webroot -w /var/www/html -d ji0vwl.net -d www.ji0vwl.net
上記を実行すると、Web rootに.well-knownディレクトリ(隠しディレクトリ)が生成され、Let’s Encryptがこのディレクトリに作成されたファイルをチェックできたことをもってドメイン所有者であることを認証し、証明書を生成します。
証明書が生成される場所はstandaloneモードと同じなので、その(3)で設定した設定をいじる必要なく証明書が適用されました。
自動更新は、Webサーバを停止しなくても済むwebrootモードで行おうと思います。