2016年10月13日木曜日

letsencryptあらためcertbot

Let's Encryptからウェブサーバ証明書を取得するツールは
当初letsencryptでしたが、
いつの間にかcertbotに変わっています。
ということで証明書の更新時期にあわせて
certbotを使ってみることに。

まずはセットアップです。
certbotのサイトにアクセスし、
そこで[ウェブサーバ]と[OS]の種類を指定します。
証明書をセットアップする対象マシンはSeversman@VPSにあり、
ApacheとUbuntu 14.04 (trusty)の組み合わせで運用しております。
ということでそれを選択して先に進みます。
そこにはインストールの方法がかかれています。

案内に従い以下を実行します。
$ su -
# mkdir /usr/local/src/certbot
# cd /usr/local/src/certbot
# wget https://dl.eff.org/certbot-auto
# chmod a+x certbot-auto
これで準備完了です。

続いて
# ./certbot-auto
を実行するとGUIっぽいツールが起動します。
"/etc/apache2/sites-available/"辺りを参照しているのか、
現在ウェブサーバで稼働中のドメイン(サーバ名)の一覧が表示され、
それぞれのドメインについてhttpsを利用するかどうかを選択できます。
サブドメインを含めて大量にドメインを指定している私にとっては
余計なお世話的機能ですが、
とりあえずLet's Encryptから証明書をもらっている1ドメインのみ残し、
あとはチェックを外しておきます。
ここで注意。カーソルの上下キーでドメインを選択し、
[スペース]キーを押すことで使用/未使用を切り替えるのですが、
'全角スペース'を入力してしまうとエラーでツール自体が落ちます。
キーボードの入力モードは[半角英数]にしておきましょう。

さて、証明書の期限がまだ十分ある時にそこから先に進もうとすると、
既存証明書の再インストールか、
証明書の更新が選択肢として現れますが、
そうでなければ自動的に更新されます。
証明書の失効の問題もあるので、
なるべく期限直前になるまで更新はしないほうがいいでしょう。

ちなみに、これまでhttpsを運用していないドメインを有効にしようとすると、
そのドメイン(サブドメイン)の所有確認をDNSの正引きだけで行っているのか、
自動的に"/etc/apache2/sites-available/<ドメイン名>-le-ssl.conf"と
"/etc/letsencrypt/renewal/<ドメイン名>.conf"が生成され、
"/etc/letsencrypt/live/<ドメイン名>/"ディレクトリ下に
証明書のファイル等が置かれ、勝手にSSLサイトとしてオープンされます。
途中よりセキュアな設定としてhttpをhttpsにリダイレクトするかどうか
尋ねてきますが、実はこの時には既にhttps化は完了しているので、
ここでキャンセルしても全然キャンセルになりません。
設定を変えたくないドメインは決してチェックしてはいけません。

そして本当に注意しないとまずいのは、
すでに別の認証局から発行されている証明書で
運用しているドメインについてです。
先の選択画面でそのドメインをチェックしていると
何の断りなくもなくLet's Encryptからの証明書を上書きしてくれます。
まったく迷惑なツールです。
certbotを使用する際は細心の注意を払いましょう。

最後に。
certbot-auto実行後にも表示されることですが、
https://www.ssllabs.com/ssltest/analyze.html?d=<ドメイン名>
ではそのhttpsサイトの安全性を評価してくれます。
たまにチェックしてみるといいかも。

0 件のコメント:

コメントを投稿