LoginSignup
1
1

More than 5 years have passed since last update.

Let's Encryptを試したログ

Last updated at Posted at 2015-12-05

無料のSSL。
Debian で試す。

本家: https://letsencrypt.org/howitworks/
解説: http://www.websec-room.com/2015/12/04/2380

Debian wheezy

rootで

$ git clone https://github.com/letsencrypt/letsencrypt
$ cd letsencrypt
$ ./letsencrypt-auto --help

パッケージメモ

以下のパッケージが自動でインストールされましたが、もう必要とされていません:
  libnet-daemon-perl libplrpc-perl
これを削除するには 'apt-get autoremove' を利用してください。
以下の特別パッケージがインストールされます:
  augeas-lenses binutils cpp cpp-4.7 gcc-4.7 libc-bin libc-dev-bin libc6
  libc6-dev libexpat1 libexpat1-dev libffi5 libgmp10 libgomp1 libitm1 libmpc2
  libmpfr4 libpython2.7 libquadmath0 libssl1.0.0 linux-libc-dev
  python-pkg-resources python-setuptools python2.7-dev zlib1g-dev
提案パッケージ:
  augeas-doc binutils-doc cpp-doc gcc-4.7-locales gcc-multilib make
  manpages-dev autoconf automake1.9 libtool flex bison gdb gcc-doc
  gcc-4.7-multilib libmudflap0-4.7-dev gcc-4.7-doc libgcc1-dbg libgomp1-dbg
  libitm1-dbg libquadmath0-dbg libmudflap0-dbg libcloog-ppl0 libppl-c2 libppl7
  binutils-gold augeas-tools glibc-doc python-distribute python-distribute-doc
推奨パッケージ:
  libssl-doc python-pip
以下のパッケージが新たにインストールされます:
  augeas-lenses binutils cpp cpp-4.7 dialog gcc gcc-4.7 libaugeas0
  libc-dev-bin libc6-dev libexpat1-dev libffi-dev libffi5 libgmp10 libgomp1
  libitm1 libmpc2 libmpfr4 libpython2.7 libquadmath0 libssl-dev linux-libc-dev
  python-dev python-pkg-resources python-setuptools python-virtualenv
  python2.7-dev zlib1g-dev
以下のパッケージはアップグレードされます:
  libc-bin libc6 libexpat1 libssl1.0.0
アップグレード: 4 個、新規インストール: 28 個、削除: 0 個、保留: 76 個。

C系とPython系の環境が勝手にインストールされる。
次のコマンド実行。

 ./letsencrypt-auto --apache
Updating letsencrypt and virtual environment dependencies.......
Running with virtualenv: /root/.local/share/letsencrypt/bin/letsencrypt --apache
The apache plugin is not working; there may be problems with your existing configuration.
The error was: PluginError('Unable to parse runtime variables',)

Debianでもダメじゃん。jessieならいけたのかな。
まあbetaだから仕方ないのか。
https://github.com/letsencrypt/letsencrypt/issues/1208
現在進行形で議論がある。

manualモードで起動して、表示されたコマンドを別コンソールから実行する。

mkdir -p /tmp/letsencrypt/public_html/.well-known/acme-challenge
cd /tmp/letsencrypt/public_html

...

一旦Apacheを止めてPythonの簡易サーバーを立ち上げたら、Enterを押してcontinue

/etc/letsencrypt/live/

に証明書一式が出来た模様。

あとはVirtualHost *:80をコピーして *:443 にして(継承とかないのかな)

    SSLEngine on
    SSLCertificateFile /etc/letsencrypt/live/mydomain/cert.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/mydomain/privkey.pem
    SSLCertificateChainFile /etc/letsencrypt/live/mydomain/chain.pem

これを書くだけ。
個人用サーバーがSSL化できた。期間は3ヶ月。

新しいサイトを作るときのテストサーバーにちょうど良い感じがする。
SSLのテストって証明書のせいで省略しちゃうことあるし、ここまで簡単だとテストで悩むよりさくっと設定する方が早そう。

Debian jessie

(追記)

気になったので Debian jessie でも試した。
元々は ApacheとPHPとPostgreSQLしか入っていないサーバー。
バーチャルホストも一つしかないテストサーバーで、多少ファイルが書き換えられても戻せるので自動でやってみる。

$ git clone https://github.com/letsencrypt/letsencrypt
$ cd letsencrypt
$ ./letsencrypt-auto --help
依存関係ツリーを作成しています                
状態情報を読み取っています... 完了
ca-certificates はすでに最新版です。
ca-certificates は手動でインストールしたと設定されました。
git はすでに最新版です。
python はすでに最新版です。
以下の追加パッケージがインストールされます:
  augeas-lenses binutils cpp cpp-4.9 dh-python gcc-4.9 libasan1 libatomic1
  libc-dev-bin libc6-dev libcilkrts5 libcloog-isl4 libexpat1-dev
  libgcc-4.9-dev libgomp1 libisl10 libitm1 liblsan0 libmpc3 libmpdec2 libmpfr4
  libpython-dev libpython2.7 libpython2.7-dev libpython3-stdlib
  libpython3.4-minimal libpython3.4-stdlib libquadmath0 libssl1.0.0 libtsan0
  libubsan0 linux-libc-dev python-chardet-whl python-colorama-whl
  python-distlib-whl python-html5lib-whl python-pip-whl python-requests-whl
  python-setuptools-whl python-six-whl python-urllib3-whl python2.7-dev
  python3 python3-minimal python3-pkg-resources python3-virtualenv python3.4
  python3.4-minimal zlib1g-dev
提案パッケージ:
  augeas-doc binutils-doc cpp-doc gcc-4.9-locales gcc-multilib make
  manpages-dev autoconf automake libtool flex bison gdb gcc-doc
  gcc-4.9-multilib gcc-4.9-doc libgcc1-dbg libgomp1-dbg libitm1-dbg
  libatomic1-dbg libasan1-dbg liblsan0-dbg libtsan0-dbg libubsan0-dbg
  libcilkrts5-dbg libquadmath0-dbg augeas-tools glibc-doc python3-doc
  python3-tk python3-venv python3-setuptools python3.4-venv python3.4-doc
  binfmt-support
推奨パッケージ:
  libssl-doc
以下のパッケージが新たにインストールされます:
  augeas-lenses binutils cpp cpp-4.9 dh-python dialog gcc gcc-4.9 libasan1
  libatomic1 libaugeas0 libc-dev-bin libc6-dev libcilkrts5 libcloog-isl4
  libexpat1-dev libffi-dev libgcc-4.9-dev libgomp1 libisl10 libitm1 liblsan0
  libmpc3 libmpdec2 libmpfr4 libpython-dev libpython2.7 libpython2.7-dev
  libpython3-stdlib libpython3.4-minimal libpython3.4-stdlib libquadmath0
  libssl-dev libtsan0 libubsan0 linux-libc-dev python-chardet-whl
  python-colorama-whl python-dev python-distlib-whl python-html5lib-whl
  python-pip-whl python-requests-whl python-setuptools-whl python-six-whl
  python-urllib3-whl python-virtualenv python2.7-dev python3 python3-minimal
  python3-pkg-resources python3-virtualenv python3.4 python3.4-minimal
  virtualenv zlib1g-dev
以下のパッケージはアップグレードされます:
  libssl1.0.0
アップグレード: 1 個、新規インストール: 56 個、削除: 0 個、保留: 2 個。

新規 56 個……。

./letsencrypt-auto --apache

SSL化するバーチャルホスト選択画面が出た。

ssl1.png

続いて SSLのみにするかの選択

ssl2.png

そしてSSLテスト用のリンクを提示される。
https://www.ssllabs.com/ssltest/index.html
( https://www.ssllabs.com/ssltest/analyze.html?d=domain )

BASIC認証をかけてたんだけども、問題無し。
その設定ごと丸々SSL用にコピーされていた。
ここまで自動化されてたらいいね。3ヶ月後の更新も楽々できそう。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1