今回はNginxで行っていますが、ApacheだったらApacheの設定ファイルを同じように変更すればいいだけです。
dehydratedをGitからインストール
cd /opt git clone https://github.com/lukas2511/dehydrated.git cd dehydrated cp docs/examples/config config vim config #WELLKNOWNのコメントアウトを外す echo "ドメイン名" > domains.txt mkdir /var/www/dehydrated chmod 755 /var/www/dehydrated chown -R nginx:nginx /var/www/dehydrated
設定変更
以下を/etc/nginx/conf.d/www.confの対応するドメインのlisten 80に追加
location ^~ /.well-known/acme-challenge/ { alias /var/www/dehydrated/; }
アカウントを作成して、証明書発行
./dehydrated --register --accept-terms ./dehydrated -c --accept-terms
証明書設定変更
最後にSSLにしたいドメインのlisten 443のssl_certificateとssl_certificate_keyを変更し完了
ssl_certificate /opt/dehydrated/certs/ドメイン名/fullchain.pem; ssl_certificate_key /opt/dehydrated/certs/ドメイン名/privkey.pem;
cron設定
/root/script/letsencrypt_with_dehydrated.sh
#!/bin/bash cd /opt/dehydrated ./dehydrated --cron && service nginx restart
/etc/cron.d/letsencrypt_with_dehydrated
0 4 * * 1 /root/scripts/letsencrypt_with_dehydrated.sh > /tmp/letsencrypt_with_dehydrated.log 2> /tmp/letsencrypt_with_dehydrated_err.log
(毎週月曜日04:00に更新確認)
登録
crontab /etc/cron.d/letsencrypt_with_dehydrated