無償利用で使えるSSL証明書"Let's Encrypt"を仮想環境で動かしてみたかった

無償利用で使えるSSL証明書"Let's Encrypt"を仮想環境で動かしてみたかった

author potpro(ぼとぷろ)
2015/09/23

無償利用で使えるSSL証明書"Let's Encrypt"を仮想環境で動かしてみたかった

lets

Let's EncryptのDeveloper版がなんか公開されてましたので、なんとなく使ってみました。 まだdeveloper版なので本番環境では使えません。

というか、セキュリティ的に使うなよ!絶対使うなよ! って感じです。

・・・いや、さすがに怖いのでまだ本番では使わないのですが。

Let's Encryptに関しては、ニュースサイトなどで取り上げてるところも多かったので、知ってる人は知ってると思いますが、 簡単に言うと無償で使えるSSL/TLS証明書(ちゃんとした署名付き)が使えます。

これをやっているのでfirefoxのMozillaさんやネットワークのラスボスCiscoさんなんかが参加してる団体です。なので多分セキュリティ的にも問題ないはずです。

無料で容易なHTTPS導入を支援する「Let's Encrypt」、2015年に運用開始へ

このLet's encryptのソースはgithubにあります。

てっきりサイトで証明書だけ発行してダウンロードするタイプと思ったら、 そんなわけではなくインストールして端末からコマンドで発行します。

コマンド1発で証明書を生成することができますが、同時にapacheやnginxサーバーなども作ってくれたりもする様子。こりゃ簡単ですね。 Let's Encryptは、無償で使える以外にも簡単にすぐ扱えることもコンセプトなので、インストールからサーバ構築まで多分数行で終わります。素敵です。

そんなわけで、動かす。仮想環境はご存知Ubuntu15.04を用意。

ダウンロードで1時間掛かりました インストール方法はここにあります。 Using the Let’s Encrypt client

Ubuntuであれば、githubからファイルをダウンロードした後、sudo ./bootstrap/ubuntu.shと打つと自動で必要なパッケージを取得してきます。

その後、インストールは、 virtualenv --no-site-packages -p python2 venv ./venv/bin/pip install -r requirements.txt acme/ . letsencrypt-apache/ letsencrypt-nginx/ と打てばいいそうです。

virtualenvとは、pythonの仮想環境らしいのですが、なぜこれを使うかというと、元々のpythonに上書きしてぶっ壊さないようにらしいです。

ちゃんと、注意書きにぶっ壊しても知らねーぞと書いてありました。 で、ここで動かない。どうやら一括でインストールしたはずなのにpipが入っておらず実行できない。

ということで、sudo apt-get install python-pipで手動インストール。 まだpreview版なせいか、いろいろ警告出てる気がするのですがようやく動いた。 動かすにはこれを入力。

sudo ./venv/bin/letsencrypt auth すると・・・

lets2

わざわざGUIで操作できる親切設計。

lets3

今のところ、立てられるサーバはapacheだけの模様。 その後、メールアドレス登録やドメイン名が求められます。 が、途中でエラー出るし、メールアドレスには届かないし・・

githubの説明にも書いてないので、まだ動かないのだろうか。というかまだ認証鯖が動いてないから動かない? まあpreviewなんで。こんな感じで動きますよってことですね。

今、ベータプログラムの募集なんかを行っているようです。

https://letsencrypt.org/2015/09/14/our-first-cert.html

公式ブログによると、正式公開は2015/11/16の週(General availability: Week of November 16, 2015)とのことなので、気長に待ちましょう。