Debian 中的 SSL 证书未更新

SSL certificate not updating in Debian

我几个月前安装了一个 SSL 证书,现在它已经过期了。当我尝试使用

更新它时
certbot renew

它给我以下错误。

Saving debug log to /var/log/letsencrypt/letsencrypt.log

Processing /etc/letsencrypt/renewal/www.bureaubureau.dk.conf
Cert is due for renewal, auto-renewing...
Starting new HTTPS connection (1): acme-v01.api.letsencrypt.org
Traceback (most recent call last):
File "/usr/lib/python2.7/logging/init.py", line 859, in emit
msg = self.format(record)
File "/usr/lib/python2.7/dist-packages/certbot/coloredlogging.py", line 41, i n format
else super(StreamHandler, self).format(record))
File "/usr/lib/python2.7/logging/init.py", line 732, in format
return fmt.format(record)
File "/usr/lib/python2.7/logging/init.py", line 471, in format
record.message = record.getMessage()
File "/usr/lib/python2.7/logging/init.py", line 335, in getMessage
msg = msg % self.args
TypeError: _str__ returned non-string (type Error)
Logged from file renewal.py, line 420
Traceback (most recent call last):
File "/usr/lib/python2.7/logging/handlers.py", line 76, in emit
if self.shouldRollover(record):
File "/usr/lib/python2.7/logging/handlers.py", line 156, in shouldRollover
msg = "%s\n" % self.format(record)
File "/usr/lib/python2.7/logging/init.py", line 732, in format
return fmt.format(record)
File "/usr/lib/python2.7/logging/init.py", line 471, in format
record.message = record.getMessage()
File "/usr/lib/python2.7/logging/init.py", line 335, in getMessage
msg = msg % self.args
TypeError: str returned non-string (type Error)
Logged from file renewal.py, line 420

Processing /etc/letsencrypt/renewal/bureaubureau.dk.conf
Cert is due for renewal, auto-renewing...
Starting new HTTPS connection (1): acme-v01.api.letsencrypt.org
Traceback (most recent call last):
File "/usr/lib/python2.7/logging/init.py", line 859, in emit
msg = self.format(record)
File "/usr/lib/python2.7/dist-packages/certbot/coloredlogging.py", line 41, i n format
else super(StreamHandler, self).format(record))
File "/usr/lib/python2.7/logging/init.py", line 732, in format
return fmt.format(record)
File "/usr/lib/python2.7/logging/init.py", line 471, in format
record.message = record.getMessage()
File "/usr/lib/python2.7/logging/init.py", line 335, in getMessage
msg = msg % self.args
TypeError: _str__ returned non-string (type Error)
Logged from file renewal.py, line 420
Traceback (most recent call last):
File "/usr/lib/python2.7/logging/handlers.py", line 76, in emit
if self.shouldRollover(record):
File "/usr/lib/python2.7/logging/handlers.py", line 156, in shouldRollover
msg = "%s\n" % self.format(record)
File "/usr/lib/python2.7/logging/init.py", line 732, in format
return fmt.format(record)
File "/usr/lib/python2.7/logging/init.py", line 471, in format
record.message = record.getMessage()
File "/usr/lib/python2.7/logging/init.py", line 335, in getMessage
msg = msg % self.args
TypeError: str returned non-string (type Error)
Logged from file renewal.py, line 420

All renewal attempts failed. The following certs could not be renewed:
/etc/letsencrypt/live/www.bureaubureau.dk/fullchain.pem (failure)
/etc/letsencrypt/live/bureaubureau.dk/fullchain.pem (failure)
2 renew failure(s), 0 parse failure(s)

我也遇到过类似的问题,但没有任何帮助。

我也用过

sudo -H pip install -U requests

我得到了同样的回应

Cleaning up...
Exception:
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/pip/basecommand.py", line 122, in main
status = self.run(options, args)
File "/usr/lib/python2.7/dist-packages/pip/commands/install.py", line 290, in run
requirementset.preparefiles(finder, forcerootegginfo=self.bundle, bundle=self.bundle)
File "/usr/lib/python2.7/dist-packages/pip/req.py", line 1097, in preparefiles
reqtoinstall, self.upgrade)
File "/usr/lib/python2.7/dist-packages/pip/index.py", line 194, in findrequirement
page = self.getpage(mainindexurl, req)
File "/usr/lib/python2.7/dist-packages/pip/index.py", line 568, in _getpage
session=self.session,
File "/usr/lib/python2.7/dist-packages/pip/index.py", line 694, in getpage
req, link, "connection error: %s" % exc, url,
TypeError: _str__ returned non-string (type Error)

Storing debug log for failure in /root/.pip/pip.log

终于自己解决了。 Debian 8 已弃用且不再受支持,因此我将我的 Droplet 升级到 Debian 9 并升级了所有软件包和 certbot-auto,它解决了我的问题。