Let’s EncryptでSSL証明書の発行 2016年7月14日
ネットスクエアの永田です。
最近気になっていた「Let’s Encrypt」を試しにさわってみました。
Let’s Encryptとは?
「Let’s Encrypt 総合ポータル」から引用させてもらいます。
Let’s Encrypt は、認証局(CA)として「SSL/TLSサーバ証明書」を無料で発行するとともに、証明書の発行・インストール・更新のプロセスを自動化することにより、TLS や HTTPS(TLSプロトコルによって提供されるセキュアな接続の上でのHTTP通信)を普及させることを目的としているプロジェクトです。
一般的にはSSL証明書の発行は「有料で、発行・更新のたびに作業が必要」なのですが、
Let’s Encryptではそれらを解消するべく「無料で、発行・更新プロセスの自動化ができる」という
素晴らしいプロジェクトです。
SSL証明書の発行
SSL証明書の発行に使用した環境はCentOS 5系とちょっと古めなOSだったため、
Let’s Encryptの公式クライアントが対応していなかったので、
letsencrypt.shという非公式クライアントを使用しました。
詳細な手順などはこの記事では省略しますが、下記のような作業をしました。
- 証明書を発行したいドメインのWebサーバのドキュメントルート以下に/.well-known/acme-challengeといったお決まりのディレクトリを用意
- ドメインを指定してletsencrypt.shを実行して証明書を発行
- 発行された証明書などがサーバーに保存されるので、Webサーバの設定ファイルにSSL設定を追加
- Let’s Encryptが発行する証明書の有効期間は90日間なので、期間切れが近づいたら自動更新するようcronに設定を追加
結果
SSL証明書を設置したサイトに、ブラウザからhttps://~でアクセスしたところ、
Let’s Encryptが発行した証明書がちゃんと使用されていました!
ちなみにLet’s Encryptが発行できる証明書はドメイン認証型のみで、
組織の実在性を証明する企業認証型やEV型といったタイプは発行できません。
昨今では“常時SSL化”といったキーワードも出てきているので、
用途にあわせてLet’s Encryptをうまく使っていきたいですね。