【付録】 dehydrated v0.40 での変更
v0.40 で、ライセンス受諾の確認が必須になりました。 それまでは暗黙の受諾として、dehydrated が勝手に受諾していましたが、 別途手動で、dehydrated --register --accept-terms を実行する必要があります。
ステージング用のライセンス受諾ともまた別の話となりますので、 CA だけでなく、CA_TERMS も合わせて設定する必要があります。
この振る舞いは /usr/local/etc/dehydrated/accounts/ハッシュキー/account_key.pem の有り無しがトリガーとなりますので、 既にこのファイルがある環境では影響有りません。
初回実行に手動で実行していれば気がつくレベルとなります(エラーメッセージ等「読まない」人についてはノーコメント)。
【付録】 letsencrypt.sh から dehydrated への移行
商標上の理由で、letsencrypt.sh から dehydrated へ名前変更が実施された。 合わせてディレクトリから設定まで色々変更になったので対応についてメモっておく。
ディレクトリ名の変更
/usr/local/etc/letsencrypt.sh から /usr/local/etc/dehydrated へ変更になったわけであるが、更新後は新しいディレクトリが作成されていることもあり、こまめに手を入れる必要がある。
/usr/local/etc/letsencrypt.sh/config.sh
mv /usr/local/etc/letsencrypt.sh/config.sh /usr/local/etc/dehydrated/config
※config.sh から config に変更になったので合わせて変更を実施する。
/usr/local/etc/letsencrypt.sh/deploy.sh
mv /usr/local/etc/letsencrypt.sh/deploy.sh /usr/local/etc/dehydrated/
/usr/local/etc/letsencrypt.sh/domains.txt
mv /usr/local/etc/letsencrypt.sh/domains.txt /usr/local/etc/dehydrated/
/usr/local/etc/letsencrypt.sh/hook.sh
mv /usr/local/etc/letsencrypt.sh/hook.sh /usr/local/etc/dehydrated/
/usr/local/etc/letsencrypt.sh/certs/
mv /usr/local/etc/letsencrypt.sh/certs /usr/local/etc/dehydrated/
- certs ディレクトリはインストール時には作成されない。
- SSL証明書取得時にコモンネームと合わせて作成される。
- 既に /usr/local/etc/dehydrated/certs ディレクトリが作成されている場合は、子ディレクトリ(コモンネーム)を個別にリネーム(移動)すること。
/usr/local/etc/letsencrypt.sh/archive/
mv /usr/local/etc/letsencrypt.sh/archive /usr/local/etc/dehydrated/
- archive ディレクトリはインストール時には作成されない。
- SSL証明書クリーンナップ(-gc オプション指定)時にコモンネームと合わせて作成される。
- 既に /usr/local/etc/dehydrated/archive ディレクトリが作成されている場合は、子ディレクトリ(コモンネーム)を個別にリネーム(移動)すること。
後始末
rmdir /usr/local/etc/letsencrypt.sh
※全ての移動が完了すれば、ディレクトリもファイルも残ってないはずなので削除する。
設定ファイルの変更
リネームによる影響で変更になるファイルは以下の3ファイルである。 ディレクトリ名およびコマンド名に letsencrypt.sh というキーワードが無いか確認し、dehydrated に置き換えること。
- /usr/local/etc/dehydrated/config
- /usr/local/etc/dehydrated/deploy.sh
- /usr/local/etc/dehydrated/hook.sh
SSL証明書利用アプリケーションの設定変更
本例では Apache(2.4)を例に説明した。 当該箇所のディレクトリ名変更を新しいディレクトリ名に変更する。
SSL証明書の旧指定例
SSLCertificateFile /usr/local/etc/letsencrypt.sh/certs/コモンネーム/fullchain.pem SSLCertificateKeyFile /usr/local/etc/letsencrypt.sh/certs/コモンネーム/privkey.pem
トークンディレクトリの旧指定例
Alias /.well-known/acme-challenge/ /usr/local/etc/letsencrypt.sh/.acme-challenges/ <Directory /usr/local/etc/letsencrypt.sh/.acme-challenges> Options None AllowOverride None Require all granted Header add Content-Type text/plain </Directory>
起動設定(periodic)の変更
/etc/periodic.conf あるいは /etc/periodic.conf.local のどちらかの設定で定期更新を実施しているわけだが、変数名が変更になっている。
本例では以下のような設定を実施しているが、
weekly_letsencrypt_enable="YES" weekly_letsencrypt_deployscript="/usr/local/etc/letsencrypt.sh/deploy.sh"
下記のように変更する。
weekly_dehydrated_enable="YES" weekly_dehydrated_deployscript="/usr/local/etc/dehydrated/deploy.sh"
単純に letsencrypt や letsencrypt.sh を dehydrated に置き換えるだけである。