やわらかしかっけい

なんでもすぐに忘れてしまう自分のために

Let's Encrypt やっぱり自動更新されてなかった

期限切れちゃってた。証明書の作り直しです。

古いやつバックアップ

# mv /etc/letsencrypt /etc/letsencrypt.back

certbot-autoがインストールされてなかったようなので

ここに書いてある通りに

# yum install epel-release
# wget https://dl.eff.org/certbot-auto
# chmod a+x certbot-auto

と、ここで

# ./certbot-auto

してもエラーが出たので、メッセージに従ってこうする

# ./certbot-auto certonly

あなたが落としたのは金の斧ですか?銀の斧ですか?

How would you like to authenticate with the ACME CA?
1: Apache Web Server plugin - Beta (apache) [Misconfigured]
2: Spin up a temporary webserver (standalone)
3: Place files in webroot directory (webroot)

わかんないので、インターネットを信じて2を選ぶ


あとはA(Agree)とかY(Yes)を押したり、メールアドレスやドメインを入力したりする

できたっぽいので

# service httpd start

自動更新の設定を、今度こそやっておこう

crontabというのを編集するのだが、

# crontab -e

で開くと憎たらしいviエディタが現れたので

# EDITOR=nano
# export EDITOR

ってやっておく。これでnanoエディタがデフォになる

2018.9.1追記

上記 crontab -eで編集すると、
/var/spool/cron/ユーザー
のファイルが編集される。そこに、

0 6 1 * * /etc/init.d/httpd stop && ./certbot-auto renew --force-renew && /etc/init.d/httpd start

というのを書き入れてたのだが、証明書を入れ直して以降、サーバーの起動がうまくいかなくなっていた

別のcronファイル

/etc/cron.d/
というフォルダの中に入れておけば、勝手に実行されるとのこと

(ちなみに、/etc/crontab というファイルに書く方法もある。3通りあるっぽい)

/etc/cron.d/let'sencrtpt
というファイルを作成(というかすでに作ってあった)

0 1 1 * * root /home/homepage/certbot-auto renew --post-hook "service httpd restart"

と書き入れておく

どうかな〜