lll*_*lll 3 ssl ssl-certificate lets-encrypt certbot
我花了几个小时寻找解决方案,但找不到任何解决方案。我通过 certbot 使用 LetsEncrypt ssl。
我的域名是ektaz.com当我在浏览器上检查证书时它说
Expires: 8 November 2021 Monday 16:24:33 GMT+03:00
当我从服务器端检查它时,certbot certificates我得到的结果为
Expiry Date: 2021-11-08 13:24:33+00:00 (VALID: 39 days)
但所有浏览器都说证书无效我不明白为什么。
此外,我已经多次更新此证书,certbot renew到目前为止我没有任何问题。我已经清除了所有缓存,尝试结果是一样的。我多次重启apache。即使重新启动服务器但没有任何改变。
服务器操作系统:Ubuntu 20.04 LTS
您的证书可能根本不是无效的。
有一个简单的修复方法。我在这个例子中使用 nginx 配置风格:
ssl_certificate /usr/local/etc/letsencrypt/live/domain.com/cert.pem;
Run Code Online (Sandbox Code Playgroud)
像这样的行需要用这样的行替换
ssl_certificate /usr/local/etc/letsencrypt/live/domain.com/fullchain.pem;
Run Code Online (Sandbox Code Playgroud)
然后刷新服务器的配置。
这个问题随处可见,包括小型和大型网站。
根本原因是旧的教程用于配置提供 cert.pem 文件(因为它有效)的网络服务器,而不是 fullchain.pem 文件,后者确保浏览器获得验证证书所需的完整链。
不幸的是,Apple、Mozilla 和其他一些公司已经放弃了,仍在使用相同的中间证书(IdentTrust DST 全局根 CA X3),该证书于昨天下午 2:21:40 CST 过期,以检查之前使用它的证书。iOS 15.0 (19A346) 是唯一发布的 Apple 软件版本,即使服务器未发送完整链,也会自动使用新的中间证书。
服务器使用的实际中间证书是由 ISRG Root X1 颁发给 R3 的,但除非您将服务器配置为通过在服务器配置中使用 fullchain.pem 显式告知浏览器,否则遗憾的是许多软件公司都失败了并且不要自己做对。
但再次强调,这是一个简单的解决方法。只需对服务器配置文件“cert.pem”->“fullchain.pem”中的行进行轻微更改即可。
并且没有理由不继续永久使用 fullchain.pem 文件。事实上,即使在这种情况之前,各种网络(大学校园 WiFi 网络因此而臭名昭著)也会破坏您的证书的权限链,除非您无论如何都使用 fullchain.pem 文件。Let's Encrypt 现在甚至建议将此作为配置 Web 服务器使用证书的唯一正确方法。
| 归档时间: |
|
| 查看次数: |
5001 次 |
| 最近记录: |