certbotがエラーを履いていた「error: (“bad handshake: Error([(‘SSL routines’, ‘ssl3_get_server_certificate’, ‘certificate verify failed’)],)”,)」

linux

当サイトのSSL証明書はLets Encryptという無料の承認局が発行してくれるものを使っている。

証明書はcertbotというコマンドで自動更新してくれるのだが、いつの間にか証明書が切れており調べたところ証明書更新コマンドである「certbot renew」にて次のエラーが出力されていた。

# certbot renew
〜〜略〜〜
Failed to renew certificate ufirst.jp with error: ("bad handshake: Error([('SSL routines', 'ssl3_get_server_certificate', 'certificate verify failed')],)",)

色々調べて以下を試したが結果は変わらず。

#yum update certbot
#yum update ca-certificates

調査をすすめるとどうやら certbot は yum では提供されておらず、snap というubuntu系のパッケージシステムを利用してインストールする必要があるそうだ。

snapdのインストール
# sudo yum install snapd
snapdの有効化
# systemctl enable --now snapd.socket
snapのシンボリックリンクを作成
# ln -s /var/lib/snapd/snap /snap
coreをインストール
# snap install core

これで snap が動くようになったはず

certbotをアンインストール
# yum remove certbot
cetbotのインストール
# snap install --classic certbot
# sudo ln -s /snap/bin/certbot /usr/bin/certbot

以下にて無事動作しSSL証明書が更新された

certbot renew

コメント

タイトルとURLをコピーしました