Let's Encrypt でHTTPS化が驚くほど簡単だった

無料で自動かつオープンにSSL証明書を発行するサービス,Let’s Encrypt,がついにパブリックベータに移行した.

試しにこのサイトをHTTPS化してみたら予想以上に簡単だった.

結論

次の3つのコマンドを実行したらHTTPS化された.

pacman -Sy letsencrypt-nginx
letsencrypt --nginx -d mano.xyz
systemctl restart nginx.service

ブラウザでアクセスするとHTTPSにリダイレクトされた.

こんな素晴しいソフトウェアの開発者の方々に感謝です.

環境

  • Archlinux
  • Nginx 1.9.7

補足

Archlinux では letsencrypt 関連のパッケージが community リポジトリに登録されている.今回は Web サーバとして Nginx を利用しているので letsencrypt-nginx をインストールした.Apache の場合は letsencrypt-apache を使うのだろう.

letsencrypt を実行するとメールアドレスの入力が求められた.SSL証明書のドメインとは無関係のアドレスでも良いようだ.次に Easy (HTTPとHTTPSを両方提供する) と Secure (HTTPSにリダイレクト)を選択する画面がでてきた.とりあえず Secure 選択した.次にSSL証明書取得完了のメッセージが表示された.

証明書等は /etc/lestencrypt/ に保存された.証明書は3ヶ月で失効する.手動で証明書の更新が必要らしい.現在,更新の自動化を進めているそうだ.

NginxのSSL関連は未設定だったが,どうやら letsencrypt 実行中に /etc/nginx/nginx.conf を変更してくれたようで Nginx を再起動するだけで HTTPS 化(HTTPSリダイレクトも含め)されていた.

ドキュメントが以下で公開されている.