Public BetaになったLet's Encryptを使ってみた。ほんとうに簡単に鍵が作れる。
まず、前提は以下のとおり。
本当に、443番ポートさえあれば良いみたい。ただし外部公開が必要。登録等は不要。
やり方については以下のサイトに書かれている。
試しに、自宅サーバで取得してみた。
まず、目的のドメインのANAMEを、自宅のIPに変更した。次に、ルータの設定で、443番アクセスを自宅サーバに通した。
以下、作業コマンド。
$ docker run -it -p 443:443 ubuntu bash # apt-get install -y git # cd /root/ # git clone https://github.com/letsencrypt/letsencrypt # cd letsencrypt # ./letsencrypt-auto --help
これで、インストール作業は完了。
あとは以下のコマンドを叩く。途中、メールアドレスの入力と規約へのAgreeをさせられる。
# ./letsencrypt-auto certonly --standalone -d letsenctest.j74th.com Updating letsencrypt and virtual environment dependencies....... Running with virtualenv: /root/.local/share/letsencrypt/bin/letsencrypt certonly --standalone -d letsenctest.j74th.com IMPORTANT NOTES: - If you lose your account credentials, you can recover through e-mails sent to site@j74th.com. - Congratulations! Your certificate and chain have been saved at /etc/letsencrypt/live/letsenctest.j74th.com/fullchain.pem. Your cert will expire on 2016-03-19. To obtain a new version of the certificate in the future, simply run Let's Encrypt again. - Your account credentials have been saved in your Let's Encrypt configuration directory at /etc/letsencrypt. You should make a secure backup of this folder now. This configuration directory will also contain certificates and private keys obtained by Let's Encrypt so making regular backups of this folder is ideal. - If you like Let's Encrypt, please consider supporting our work by: Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate Donating to EFF: https://eff.org/donate-le
すると、それだけで、/etc/letsencrypt/live/
以下に、秘密鍵と証明書ができている。
# ls /etc/letsencrypt/live/letsenctest.j74th.com/ cert.pem chain.pem fullchain.pem privkey.pem
fullchain.pemとprivkey.pemをサーバに設定すれば使えるようになる。
試しに、apache2に設定してみた。
# apt-get install -y apache2 openssl # a2enmod ssl # vi /etc/apache2/sites-available/default-ssl.conf -- 以下を編集 -- SSLCertificateFile /etc/letsencrypt/live/letsenctest.j74th.com/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/letsenctest.j74th.com/privkey.pem # a2ensite default-ssl # service apache2 start
以下の様な証明書だった。
そうかー、信頼されていないになってしまうのか。
なお、上記コマンドではCUIでメールアドレスの入力が求められるが、試していないが--email address@emil.com
--agree-tos`でスキップもできるようだ。
更新の際には、元のコマンドを呼ぶだけでいいらしい。
./letsencrypt-auto
やってみたところ、TUIでいろいろ聞かれたので、まだ早かったのかもしれない。
とりあえず、今後サイト作るときは、とりあえずLet's Encryptで暗号化しようと思います。