Let’s EncryptのPublic Beta

こっそりLimited BetaになっていたLet’s Encrypt
来月Public Betaに格上げされることが発表されました。
そこに[sign up]なるリンクがあるのでクリックしてみると、
Google Docsに飛ばされました。
表面上は電子文書での申請になるようです。
せっかくなのでいくつか持っている独自ドメインのうちの1つのwwwなFQDNを
1つだけ申し込んでみました。

で、翌日には招待メールが届きました。
てっきりどこかのURLにアクセスさせて認証するのかと思いきや、
いきなり証明書の取得方法が書かれています。
ACMEクライアントでやれと。それって何?
うまいのか?

調べてみるとACMEはAutomatic Certificate Management Environmentのことで、
証明書を取得するためのツールのようです。
ありがたいことにメールにインストールの方法が書いてあります。
とりあえずメールを一読したところ、
どうもウェブサーバを動かしているLinuxマシンから取得するほうがよさそうです。
ということで、ServersMan@VPS(Ubuntu14.04-64)にログインして作業します。

まずセットアップです。以下を実行します。

# apt-get install git
# cd /usr/local/src/
# mkdir letsencrypt
# cd letsencrypt
# git clone https://github.com/letsencrypt/letsencrypt
# cd letsencrypt
# ./letsencrypt-auto --server https://acme-v01.api.letsencrypt.org/directory --help

次に証明書取得です。以下を実行します。
ここで<FQDN>はLet’s Encryptに申請した独自ドメインのホスト名です。

# /etc/init.d/apache2 stop
# ./letsencrypt-auto certonly -a standalone -d <FQDN> --server https://acme-v01.api.letsencrypt.org/directory --agree-dev-preview

途中Emailアドレスの入力と契約条項の同意を求められます。
最後に以下のようなメッセージが出て完了です。

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at
   /etc/letsencrypt/live/<FQDN>/fullchain.pem. Your cert
   will expire on 20xx-xx-xx. To obtain a new version of the
   certificate in the future, simply run Let's Encrypt again.

証明書関連ファイルは”/etc/letsencrypt/live/<FQDN>/”ディレクトリに生成されています。
それにしても証明書の有効期間が90日間しかないんですね。短か!
まああまり手間をかける事無く更新もできそうなのでまあいいでしょう。

最後に証明書の適用です。
Apacheのプラグイン経由で取得していると自動的に適用されるようですが、
前述の方法だと手動で行う必要があります。
“/etc/apache2/sites-available/<FQDNのSSLな設定ファイル>”の内容を
以下のような感じに変更します。

SSLCertificateFile /etc/letsencrypt/live/<FQDN>/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/<FQDN>/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/<FQDN>/chain.pem
SSLCACertificateFile /etc/letsencrypt/live/<FQDN>/fullchain.pem

その後

# /etc/init.d/apache2 start

でウェブサーバを起動してすべて完了です。
ウェブブラウザからhttpsでアクセスしても問題はなく、
証明書情報を確認するとLet’s Encrypt発行であることが確認できます。

ここまで来てはたと気づきました。
ドメインの所有確認って何もしてないけどよかったのか?
申請に使ったメールアドレスがwhoisに登録済みだったから必要なかったとか?
動いてることだし、まあいいか。

広告