FreeBSDでletsencryptのメモ
FreeBSD-12.2でletsencryptを導入した。
環境はwebサーバ(apache24)
pkg install -y py37-certbot
apacheのモジュールは特に入れなかった。
証明書はwebrootで導入した。
この辺の記事は検索すればいっぱい出てくるが、FreeBSDに適した項目がある。
vi /etc/periodic.confに
weekly_certbot_enable=”YES”
通常はこの通りにすれば/etc/crontabのpriodic weeklyの設定が6ならば毎週土曜日に更新が行われ、証明書の更新期限に達すれば自動更新される。
しかし、サーバソフトによってはrestartやreloadしないと証明書エラーになる。
/usr/local/etc/letsencrypt/renewal-hooks/deploy/に名前は何でもよいがサーバーの再起動コマンドを入れる。
このディレクトリにスクリプトを入れると証明書更新成功後に実行される。
なおpriのディレクトリは更新成功に関係なく更新実行前に実行するし、postは更新実行後に実行する。
たとえば証明書をstandaloneで取得した場合、apacheを止めから更新を試みて実行後にapacheを起動するという事ができる。
私はwebrootで証明書を取得しているのでdeployにservice-restartというファイルを作成し
#!/bin/sh
service apache24 reload
保存したら
chmod 740 service-restart
これで実行されると幸せになれる。