AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 1083584
Accepted
tio oit
tio oit
Asked: 2021-11-16 03:41:21 +0800 CST2021-11-16 03:41:21 +0800 CST 2021-11-16 03:41:21 +0800 CST

curl 表示有效证书已过期

  • 772

我有一个托管在服务器上的 gitlab 社区版,当在此服务器上使用 curl 获取此本地 gitlab 网站时,即使日期有效,我也会收到过期证书错误:

curl --insecure -vvI https://gitlab.mysite.com 2>&1 | awk 'BEGIN { cert=0 } /^\* Server certificate:/ { cert=1 } /^\*/ { if (cert) print }'
* Server certificate:
*  subject: CN=gitlab.mysite.com
*  start date: Nov 12 14:36:12 2021 GMT
*  expire date: Feb 10 14:36:11 2022 GMT
*  issuer: C=US; O=Let's Encrypt; CN=R3
*  SSL certificate verify result: certificate has expired (10), continuing anyway.

但是从浏览器加载站点或在另一台服务器上使用 curl 时,我没有收到此过期证书错误。该错误仅在托管 gitlab ce 实例的服务器上本地使用 curl 时出现。

这是在另一台服务器上使用 curl 时的结果:

* Server certificate:
*  subject: CN=gitlab.mysite.com
*  start date: Nov 12 14:36:12 2021 GMT
*  expire date: Feb 10 14:36:11 2022 GMT
*  issuer: C=US; O=Let's Encrypt; CN=R3
*  SSL certificate verify ok.

由于 curl 正在解析到本地网站(已解析 ip = 127.0.1.1),是否可能存在问题?

certificate curl gitlab
  • 1 1 个回答
  • 3183 Views

1 个回答

  • Voted
  1. Best Answer
    Raul Benet
    2021-11-16T04:39:11+08:002021-11-16T04:39:11+08:00

    我在我的 Ubuntu 16.04 机器 curl 7.47.0 上出现了这些症状(在浏览器上工作,在 Curl 上失败)。

    在我的例子中,这个问题确实是由 Let's Encrypt 过期的证书(如 Bob 提到的)触发的,但实际上是由OpenSSL 处理多路径证书树的一个错误造成的。

    Ubuntu 16.04

    OpenSSL 上的这个问题已在 Ubuntu 16.04 软件包的 1.0.2g-1ubuntu4.20 版本(截至今天的最新版本)上进行了修补(请参阅此处的更改日志)。

    如果您使用的是 Ubuntu 16.04,请尝试将 OpenSSL 更新到最新版本。如果您在其他系统上,请检查您的 OpenSSL 版本。1.1.x 之前的版本存在问题并且需要“修补”(就像上面提到的 Ubuntu 发行版所做的那样)。如果您无法转而使用带有修复程序的 OpenSSL 版本,则可以求助于禁用导致问题的证书。如何禁用证书将因您的操作系统/发行版而异。

    Debian 9.3

    (更新的答案 - 一旦 OP 将操作系统识别为 Debian 9.3)
    似乎对于 Debian 9.3 这将是一个重复的问题(我没有足够的权限将其标记为这样)。
    Debian 9 上的客户端错误地报告letsencrypt 颁发的域的过期证书
    并且OP 成功应用了这个答案(这相当于我上面对Ubuntu 16.04 的建议):
    https ://serverfault.com/a/1080278/473319

    更多信息

    以下页面可以提供更多背景信息和指针,以更好地理解问题。https://scotthelme.co.uk/lets-encrypt-old-root-expiration/

    • 3

相关问题

  • 为 IIS 7.0 问题创建证书

  • CodeCollaborator svn 访问

  • 为 IIS6 自行生成 SSL 证书?

  • 如何模拟连接到 HTTPS 并记录握手?

  • SQL Server 2000 加密证书

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve