pslaboが試したことの記録

はてなダイヤリーからはてなブログに引っ越してきました

この日記は現在実行中の減量記録を含む個人的なメモとして始めましたが、最近はコンピュータやガジェット、ハック、セキュリティネタのほうがメインになっております。

はてなダイヤリー時代はカテゴリ分けが適当だったのですが、これはそのうち直します。


Let's Encrypt のパブリックベータが始まったので CentOS6 で試してみる。

Let's Encrypt のパブリックベータが始まりましたね。私的に使う機材のSSL/TLS証明書ならコレで十分ですわ。証明書の有効期限が90日なので、更新の手間はかかりますけど、無料なのでこれはやむなし。

Let's Encrypt ブログの記事
Entering Public Beta - Let's Encrypt - Free SSL/TLS Certificates


上記記事の日本語翻訳
Let's Encrypt 公開ベータプログラムが始まりました - Let's Encrypt 総合ポータル


導入手順(パブリックベータ対応版)
Let's Encrypt の使い方 - Let's Encrypt 総合ポータル

で CentOS6 で試してみました。基本的には導入手順に記載の通りで良いのですが、注意点が3点ありました。

  1. epel リポジトリを使えるようにしておく。これは python-virtualenv をバイナリパッケージでインストールするためです。
  2. ./letsencrypt-auto certonly を実行する際に --debug を追加しておくことが必要です。CentOS6 の Python は Let's Encrypt が想定するバージョンよりも古いので、DeprecationWarning が出て処理が止まります。--debug を付ければ処理が通ります。
  3. SSL/TLS証明書を発行したい機材のHTTPを短時間ながら停止せねばなりません。これは発行処理でドメインおよびFQDN所有者の確認のために、SSL/TLS証明書を発行したい機材のFQDNに対して Let's Encrypt のサーバ側から80/TCPへの通信が発生するためです。このときに Let's Encrypt の証明書発行用処理が一時的に専用のHTTPサーバを起動する仕様です。

最終的には、以下のように実行して発行できます。

環境構築

# yum install epel-release
# git clone https://github.com/letsencrypt/letsencrypt
# cd letsencrypt/
# ./letsencrypt-auto --server https://acme-v01.api.letsencrypt.org/directory --help

発行処理

# (httpd をここら辺でとめておく)
# ./letsencrypt-auto certonly -a standalone -d [ウェブサーバのFQDN] --server https://acme-v01.api.letsencrypt.org/directory --debug
# (httpd を元にもどす)

あとは、apache ならば /etc/httpd/conf.d/ssl.conf で以下のように設定すれば良いわけですね。

SSLCertificateFile /etc/letsencrypt/live/ドメイン名/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/ドメイン名/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/ドメイン名/chain.pem