let's encryptを使ってSSLに対応しようにもcertbot-autoできない場合

結論

certbot-autoではなくcertbotを使う

certbot-autoを使いLet's Encryptの証明書を発行したい

Wordpressのブログ(当ブログ)をCentOS8上のApacheサーバに移行するにあたり、SSL対応する方法をメモ程度にまとめました。Googleで調べると次のコマンドでLet's Encryptの証明書を取得できるとありますが、実際はエラーになります。

# certbot-auto certonly --webroot \
-w /var/www/html/ -d EXAMPLE.COM \
-m [email protected] \

そもそもcertbot-autoをyumでインストールしようにも存在しないと言われます。

[[email protected] ~]# yum install certbot-auto
一致した引数がありません: certbot-auto
エラー: 一致するものが見つかりません: certbot-auto

色々調べてみたところ、Let's Encryptの開発チームが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 のサポートやめるね。

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

対処法: certbotを使う

certbotならyumでインストールできます。なので

[root@v123-456-789-123 ~]# yum install certbot

でcertbotのインストールを行います。その後以下のコマンドでLet's Encriptの証明書を発行し、鍵を入手することができます。このコマンドはcertbot以外は上記のものと同じです。

# certbot certonly --webroot \
-w /var/www/html/ -d EXAMPLE.COM \
-m [email protected] \

その後はApacheに秘密鍵と公開鍵を設定すれば完了です。virtual hostを使う場合は、その設定ファイル(vhost.conf等)に以下の設定を書き込みます。SSLなので443ポートに書かないとだめです。

<VirtualHost *:443>
~
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/EXAMPLE.COM/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/EXAMPLE.COM/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/EXAMPLE.COM/chain.pem
~
</VirtualHost>

スポンサードリンク