Webセキュリティの小部屋

Twitter のフォローはこちらから Facebook ページはこちら Google+ページはこちら RSSフィードのご登録はこちらから
公開日:2019年1月20日
最終更新日:2019年1月21日

”Action required: Let's Encrypt certificate renewals”というメールが来たら対応必須!2019年2月13日以降、Let’s EncryptのSSL/TLS証明書の更新不可に!

先日、Let’s Encrypt より”Action required: Let's Encrypt certificate renewals”というタイトルのメールが届きました。

Hello,

**Action is required to prevent your Let's Encrypt certificate renewals from breaking.**

Your Let’s Encrypt client used ACME TLS-SNI-01 domain validation to issue a certificate in the past 60 days.

TLS-SNI-01 validation is reaching end-of-life and will stop working on **February 13th, 2019.**

You need to update your ACME client to use an alternative validation method (HTTP-01, DNS-01 or TLS-ALPN-01) before this date or your certificate renewals will break and existing certificates will start to expire.

If you need help updating your ACME client, please open a new topic in the Help category of the Let's Encrypt community forum:

  https://community.letsencrypt.org/c/help

Please answer all of the questions in the topic template so we can help you.

For more information about the TLS-SNI-01 end-of-life please see our API announcement:

https://community.letsencrypt.org/t/february-13-2019-end-of-life-for-all-tls-sni-01-validation-support/74209

Thank you,
   Let's Encrypt Staff

内容を確認してみると、TLS-SNI-01 に脆弱性があるため、TLS-SNI-01 認証による SSL/TLS 証明書の更新が、2019年2月13日で終了するとのことです。

Let’s Encrypt は今ではかなり普及しているので、かなりインパクトのある情報だと思うのですが、騒ぎになっていないのは英語情報しかないからでしょうか。

それで早速自分のサイトで対応をしようと思ったのですが、なかなか手こずったのでその対応方法を載せておきます。対応には、Certbot のバージョンを 0.28.0 以上に更新して HTTP で認証する必要があります。

この記事では、CentOS 7 + Apache の方法をご紹介します。

まずは、Certbot のバージョンを確認します。

バージョンが 0.28.0 より新しいのでここでは、対応の必要はありませんね。もし、バージョンが古かった場合には、yum update でバージョンアップが必要です。

次は、以下のコマンドで Let's Encrypt の SSL/TLS 証明書を HTTP 認証でテスト更新してみます。

すると、以下のようなエラーが表示されてしまいました。

Attempting to renew cert (www.websec-room.com-0001) from /etc/letsencrypt/renewal/www.websec-room.com-0001.conf produced an unexpected error: Unable to find a virtual host listening on port 80 which is currently needed for Certbot to prove to the CA that you control your domain. Please add a virtual host for port 80.. Skipping.
All renewal attempts failed. The following certs could not be renewed:
    /etc/letsencrypt/live/www.websec-room.com-0001/fullchain.pem (failure)

最初、VirtuslHost で80番ポートって何のことかと思いましたが、要は HTTP サイトで VirtualHost のApahce設定がなかっただけでした。なので、/etc/httpd/conf/httpd.conf に以下の内容を追加します。

これで Apache を再起動して、下記コマンドを実行したところ問題なく SSL/TLS 証明書のテスト更新が完了しました。

おわりに

Let's Encrypt から意味不明なメールが届いて驚いた方も多いと思いますが、適切な対応ができていれば問題ありません。

場合によっては、以下の記事にあるような作業を行う必要があるかもしれませんが、私の環境ではその必要はありませんでした。

約1ヶ月後と対応までの期間が短いですが、確実に対応しておきたいですね。


スポンサーリンク




カテゴリー:ブログ

Twitter でも、いろんな情報を発信しています。



コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA