ごめんなさい、Let’s Encrypt

エラーの内容を間違えて解釈していたまま、エラーが出るコマンドを連発したせいでロックを食らってしまいました。 認証用のファイルを確認できないというエラーを、パスが違うと思い込んでいました。 ディレクトリを作り直しみたり、属性を変えたりして試していたのですが、コマンドスイッチの「-w」指定そのものを間違えていました。 ごめんなさい、Let’s Encrypt。

ということで、名刺47封筒47のサーバー移動は来週になります。


Let’s Encrypt の複数ドメイン対応SSL導入に手こずる

SANs証明とかいうやつで、1つの証明書で複数のドメインに対応させるやつです。
細かいことは省きます。

やりたかったこと
複数のホスト名で、1つのシステムにアクセスする
システムでホスト名を判別しているのでサーバー側ではイジる必要がない

まずはSSL化したいホスト名でアクセスできるようにApacheを設定して、1つ目のサーバーのドキュメントルート下の「/.well-known/acme-challenge/」にファイル書き込めるようにアクセス権を設定、さらにAliasを張って他のホスト名からも見られるようにする
※-dで指定するけど今回はパス

./certbot-auto certonly –webroot -w /home/www/public_html/ -d san1.exsample.com -d san2.exsample.com

重要なのは、ホスト名ごとに仮想サーバーを設定すること。別名ではcertbotが認識してくれない
※させる方法もあるのかな?

覚えておくこと
導入できたSSLは1つ目のホスト名で登録される
SSL証明を見るとDNS設定で同居しているホスト名が見えるので、バレては困る場合は使えない(IPでもわかるがサーバーが同じだからと初留者が同じとは限らないが、SSLでは所有者が同じでないと同居できない)

これでVPSを纏めることができる、かなり節約になるかな。
余裕できたらサイトを量産するぞ~

SSL「Let’s Encrypt」を自動更新するためのメモ

ここはCnetOS6+Apache httpdでLet’s Encryptを自動更新するためのメモです。

カレントディレクトリを作業用など適当に変更して

wget https://dl.eff.org/certbot-auto
chmod a+x certbot-auto
./certbot-auto

多分上のコマンドでいろいろ追加インストールしたり、バージョンが違うので揃えろとかいわれるので諸々対応を済ませ

certbot certonly --agree-tos --webroot -w /var/www/html/ -d example.com

上のようにサーバーの設定を入力すると

/etc/letsencrypt/live/example.com/

ここにpemが生成されるので

SSLCertificateFile /etc/letsencrypt/live/example.com/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem
SSLCACertificateFile /etc/letsencrypt/live/example.com/chain.pem

を設定してウェブサーバーを再起動
ちなみに、Apacheが2.4.8以上はfullchain.pemにしないといけないらしい。
そして、cronに次のコマンドを月イチ実行で登録する。

/usr/bin/certbot-auto renew --post-hook "service httpd reload"

問題ないかどうかはとりあえず実行すれば確認できる。
更新頻度が高いとまだしなくていいよって怒られるようです。

webss.inのSSLを更新

webss.inはWEBサイトのスクリーンショットを取得できる無料サービスです。
この手のサービスでは珍しくSSLに対応させています。
といっても、無料のLet’s Encryptなので、3ヶ月毎に更新の必要があります。
9月末で期限が来るので更に3ヶ月、12月まで延長させました。

WebSSを「Let’s Encrypt」でSSL化しました

WebサイトのSSを取得できるサービス、「WebSS」をSSL化しました。
これで、SSL接続のページに導入しても「安全な接続ではない」とブラウザに怒られることもなくなりました。

もともとはDTIのServersMax@VPSで仮想ホスト上で運用していたのですが、SSL化に伴い独立させました。
同じくServersMan@VPSを契約し、まるっと移動させました。

鯖の設定でちょっと手こずるも、いろいろと思い出しながら準備完了。
SSLは無料のSSL「Let’s Encrypt」を採用しました。
通常は鯖にパッケージを追加する必要があるのですが、いろいろと面倒そうなのと、あまりレビューがなく人柱になるつもりもありません。
そこで、一般的なSSL導入と同じ手続きができるSSLボックスで導入することにしました。

契約の手順はここでは省きますが、特に難なく導入は完了。
SSLをインストールしたことがあれば、ものの数分で完了するはずです。
ただ、この「Let’s Encrypt」は有効期限が90日、つまり3ヶ月毎に更新が必要です。
まぁ、発行された証明書を上書きしてhttpdを再起動するだけなのですが、無料とはいえちょっと面倒なのかもしれません。
鯖にパッケージを導入する方法なら更新自体も自動にできるっぽいですが。

ともかく、無事SSL化に成功しました。
他のサービスも順番にSSL化してもいいかもしれません。
ただ、マルチドメイン非対応なので、SSLの数だけ鯖を用意しないといけないのが難点です。
専用鯖を用意してVPSを動かせるように勉強してみました。

でめたし、でめたし。