Amazon Linux 2 で Let’s Encrypt の certbot-auto ができなくなったので対処してみる

Let’s Encrypt は無償でSSL/TLS証明書が発行できて、サービス開始当初からありがたく使わせてもらっています。
証明書の有効期限は90日と短いので、3か月ごとに更新が必要です。
cron 使って自動更新もできるので、さほど問題にはなりません。
ただ、ワイルドカードで使う場合は自動更新できないので手動で更新します。

AWS で EC2インスタンスを使って、Amazon Linux 2 で公開しているWebサイトで、もうすぐ期限を迎える証明書があるので、更新作業に着手。
しかし、ここで困ったことに・・・。
いつも通り、certbot-auto コマンドを実行したところ、以下のメッセージが表示され、更新できない。

もともと、certbot-auto は Amazon Linux 2 を公式にサポートしていなかったんだけど、普通にインストールして、3か月前までは普通に使えてた。
それが急に使えなくなったので困ってしまった。
調べてみると、Amazon Linux 2 に限らず、どのOSでも certbot-auto のサポートをやめたみたい。

【参考】Let’s Encryptのコミュニティサイト
https://community.letsencrypt.org/t/certbot-auto-no-longer-works-on-debian-based-systems/139702/7
(意訳)おれら少人数だし、たくさんのOSに対応するの疲れたから、バージョン1.10.0のリリースをもってcertbot-auto のサポートやめるね。

さぁ困った。期限切れまであとわずか。
しかし、いつまでも困っていても困ってしまうので困るのはこれくらいにして、対処方法を探したところ、AWSの公式サイトで見つけました。

【参考】チュートリアル: Amazon Linux 2 に SSL/TLS を設定するhttps://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/SSL-on-amazon-linux-2.html#install

なんだ、結局 EPELリポジトリから certbot をインストールしたらいいみたい。
EPEL は Extra Packages for Enterprise Linux の略で、エンタープライズLinux用の高品質な追加パッケージセットが含まれているそうです。
で、早速やってみた。
ちなみに、今回はDNSプラグインもWebサーバーへの反映も要らないので、シンプルに EPELリポジトリから certbot だけインストールします。Snap はよくわからないし、馴染みがないので入れません。
まずは、Amazon Linux Extra コマンドで EPEL を有効化する。

EPEL が有効になったことを確認する。enabled になっていたら準備おっけー。

yumコマンドで certbot をインストールする。「certbot-auto」ではなく「certbot」です。

ちなみに、Apache使っている場合「python2-certbot-apache」、nginx使っている場合は「python2-certbot-nginx」をインストールするとある程度自動化できるらしい。
今回はワイルドカードの証明書を発行するため、自動化はしない。
ちなみに無事にインストールできたけど、依存関係のためたくさんのパッケージが入った。

certbot コマンドのオプションはこんな感じ。

ひとまず今回は EPELリポジトリから certbot をインストールするところまで。
次回はワイルドカードの証明書を対話形式で発行するまで書きます。

コメントを残す

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

PAGE TOP