最近使っているdokku環境にてSSLが必要になったので、Let's Encryptで証明書を発行して
設定してみました
dokkuについては以下の記事にわかりやすく紹介されています
個人開発ならHerokuよりDokkuを使おう
-
certbot-auto をインストール
curl https://dl.eff.org/certbot-auto -o /usr/bin/certbot-auto chmod +x /usr/bin/certbot-auto
-
certbot-autoでDNS証明書を発行
certbot-auto certonly --manual --email <email@address> --agree-tos --preferred-challenges dns --domain <FDQN>
途中でDNSのTXTレコードに指定の文字列を登録しろって言われるので指示に従ってDNSにTXTレコードを登録する。
問題なく認証できると以下のファイルが生成されます
$ ls -1 /etc/letsencrypt/hogehoge cert.pem chain.pem fullchain.pem privkey.pem
-
鍵と証明書を tarに固める
$ cp /etc/letsencrypt/hogehoge/fullchain.pem server.crt $ cp /etc/letsencrypt/hogehoge/privkey.pem server.key $ tar cvf cert-key.tar server.crt server.key
-
dokkuに鍵ファイルをインポート
$ dokku certs:add <appname> < cert-key.tar
参考
http://dokku.viewdocs.io/dokku/configuration/ssl/
http://sig9.hatenablog.com/entry/2017/10/27/000000