如果我尝试从 debian 9 访问具有 certbot 颁发的证书的 HTTPS 服务器,我会收到以下错误:
# curl -v https://hu.dbpedia.org/
* Trying 195.111.2.82...
* TCP_NODELAY set
* Connected to hu.dbpedia.org (195.111.2.82) port 443 (#0)
* ALPN, offering h2
* ALPN, offering http/1.1
* Cipher selection: ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH
* successfully set certificate verify locations:
* CAfile: /etc/ssl/certs/ca-certificates.crt
CApath: /etc/ssl/certs
* TLSv1.2 (OUT), TLS header, Certificate Status (22):
* TLSv1.2 (OUT), TLS handshake, Client hello (1):
* TLSv1.2 (IN), TLS handshake, Server hello (2):
* TLSv1.2 (IN), TLS handshake, Certificate (11):
* TLSv1.2 (OUT), TLS alert, Server hello (2):
* SSL certificate problem: certificate has expired
* Curl_http_done: called premature == 1
* stopped the pause stream!
* Closing connection 0
curl: (60) SSL certificate problem: certificate has expired
但是,如果我从 debian 10 尝试相同的命令,它会成功。
我尝试使用 rsync 简单地将所有 ca-certificates 从 debian 10 VM 复制到 debian 9 VM(到 /usr/local/share/ca-certificates),然后运行update-ca-certificates
似乎添加了 400 多个证书。不幸的是,它没有帮助。这并不奇怪,因为显然 debian 9 和 10 上似乎有相同的证书。
我的问题是:如何在不完全忽略证书验证的情况下从 debian 9 机器访问带有 certbot 证书的站点