无法备份到自定义 S3 端点,原因是 HTTPS 证书错误

你好,

我刚刚使用自定义 S3 端点(Scality)配置了 Discourse。不幸的是,备份因 SSL 错误而失败:

****************************** 试运行 ******************************
正在将 'default' 的上传文件迁移到 S3...
正在将文件上传到 S3...
 - 列出本地文件
.............. => 14025 个文件
 - 列出 S3 文件
rake aborted!
Seahorse::Client::NetworkingError: SSL_connect returned=1 errno=0 state=error: certificate verify failed (unspecified certificate verification error)

令人惊讶的是,当我通过浏览器连接到该端点时,SSL 证书显示为有效。

您有什么建议吗?

提前感谢

在该 URL 上使用 HTTPS 检查网站。

我们刚刚测试了我们的 S3 的 SSL 证书,没有发现任何异常。
有没有办法提高客户端库的详细程度?

 通过套接字测试协议(NPN+ALPN 除外)
 SSLv2 未提供(OK)
 SSLv3 未提供(OK)
 TLS 1 已提供
 TLS 1.1 已提供
 TLS 1.2 已提供(OK)
 TLS 1.3 未提供
 NPN/SPDY http/1.1(已通告)
 ALPN/HTTP2 http/1.1(已提供)
 测试密码套件类别
 NULL 密码套件(无加密)未提供(OK)
 匿名 NULL 密码套件(无身份验证)未提供(OK)
 导出密码套件(不含 ADH+NULL)未提供(OK)
 低强度:64 位 + DES、RC[2,4](不含导出)未提供(OK)
 三重 DES 密码套件 / IDEA 未提供(OK)
 平均:SEED + 128+256 位 CBC 密码套件已提供
 强加密(AEAD 密码套件)已提供(OK)
 测试强健(完美)前向保密性,(P)FS -- 省略 NULL 身份验证/加密、3DES、RC4
 已提供前向保密性(OK)ECDHE-RSA-AES256-GCM-SHA384
 ECDHE-RSA-AES256-SHA384 ECDHE-RSA-AES256-SHA
 ECDHE-RSA-CHACHA20-POLY1305
 ECDHE-RSA-CAMELLIA256-SHA384
 ECDHE-ARIA256-GCM-SHA384
 ECDHE-RSA-AES128-GCM-SHA256
 ECDHE-RSA-AES128-SHA256 ECDHE-RSA-AES128-SHA
 ECDHE-RSA-CAMELLIA128-SHA256
 ECDHE-ARIA128-GCM-SHA256
 已提供椭圆曲线:prime256v1 secp384r1 secp521r1 X25519 X448
 测试服务器偏好设置
 是否有服务器密码套件顺序?没有(NOT ok)
 协商协议 TLSv1.2
 协商密码套件 AES128-GCM-SHA256 -- 测试结果不确定,列表中缺少匹配的密码套件,请参见下文
 按协议协商的密码套件(列表中缺少匹配的密码套件)
 ECDHE-RSA-AES256-SHA: TLSv1, TLSv1.1
 ECDHE-RSA-AES256-GCM-SHA384: TLSv1.2
 由于顺序由客户端决定,未进行进一步的密码套件顺序检查
 测试服务器默认设置(Server Hello)
 TLS 扩展(标准)"renegotiation info/#65281"
 "EC point formats/#11" "session ticket/#35"
 "next protocol/#13172" "max fragment length/#1"
 "application layer protocol negotiation/#16"
 "encrypt-then-mac/#22"
 "extended master secret/#23"
 会话票据 RFC 5077 提示 300 秒,会话票据密钥似乎每天轮换 < 每天
 支持 SSL 会话 ID 是
 会话恢复票据 否,ID:否
 TLS 时钟偏差 随机值,无法进行指纹识别
 签名算法 SHA256 with RSA
 服务器密钥大小 RSA 2048 位
 服务器密钥用途 数字签名,密钥加密
 服务器扩展密钥用途 TLS Web 客户端身份验证,TLS Web 服务器身份验证
 序列号 / 指纹 115C7B3E0D604C7C48C6B1EC968C21955BB78242 / SHA1 39699B464489253565A2CFE7E037E497B3CB3380
 SHA256 87C308F50059D200EFAE86DCBA32BC3F3EB2154D397F3606BACCABE27F6A7594
 通用名称 (CN) *.epfl.ch
 subjectAltName (SAN) *.epfl.ch epfl.ch
 颁发者 QuoVadis Global SSL ICA G3(QuoVadis Limited,来自 BM)
 信任(主机名)通过 SAN 通配符和 CN 通配符(无 SNI 时相同)确认 OK
 信任链 OK
 EV 证书(实验性)否
 "eTLS"(可见性信息)未显示
 证书有效期(UTC)656 >= 60 天(2020-01-15 09:03 --> 2022-01-15 09:13)
 提供的证书数量 2
 证书吊销列表 http://crl.quovadisglobal.com/qvsslg3.crl,未吊销
 OCSP URI http://ocsp.quovadisglobal.com,未吊销
 OCSP 装订未提供
 OCSP 必须装订扩展 --
 DNS CAA RR(实验性)未提供
 证书透明度 是(证书扩展)
 测试 HTTP 头响应 @ "/"
 HTTP 状态码 403 Forbidden
 HTTP 时钟偏差 +3 秒(相对于本地时间)
 严格传输安全未提供
 公钥固定 --
 服务器横幅 nginx
 应用横幅 --
 Cookie(在 "/" 处未颁发)-- 也许可以尝试目标 URL 的 30x
 安全头 --
 反向代理横幅 --
 /
 测试漏洞
 Heartbleed (CVE-2014-0160) 未受漏洞影响(OK),无心跳扩展
 CCS (CVE-2014-0224) 未受漏洞影响(OK)
 Ticketbleed (CVE-2016-9244),实验性。未受漏洞影响(OK)
 ROBOT 未受漏洞影响(OK)
 安全重新协商 (CVE-2009-3555) 未受漏洞影响(OK)
 安全客户端发起的重新协商 未受漏洞影响(OK)
 CRIME, TLS (CVE-2012-4929) 未受漏洞影响(OK)
 BREACH (CVE-2013-3587) 无 HTTP 压缩(OK)-- 仅测试了提供的 "/"
 POODLE, SSL (CVE-2014-3566) 未受漏洞影响(OK)
 TLS_FALLBACK_SCSV (RFC 7507) 支持降级攻击预防(OK)
 SWEET32 (CVE-2016-2183, CVE-2016-6329) 未受漏洞影响(OK)
 FREAK (CVE-2015-0204) 未受漏洞影响(OK)
 DROWN (CVE-2016-0800, CVE-2016-0703) 此主机和端口未受漏洞影响(OK)
 确保您不在其他地方将此证书与启用 SSLv2 的服务一起使用
 https://censys.io/ipv4?q=87C308F50059D200EFAE86DCBA32BC3F3EB2154D397F3606BACCABE27F6A7594 可帮助您查找
 LOGJAM (CVE-2015-4000),实验性未受漏洞影响(OK):无 DH 导出密码套件,未检测到 <= TLS 1.2 的 DH 密钥
 BEAST (CVE-2011-3389) TLS1: ECDHE-RSA-AES256-SHA
 AES256-SHA CAMELLIA256-SHA
 ECDHE-RSA-AES128-SHA
 AES128-SHA CAMELLIA128-SHA
 易受攻击 -- 但也支持更高协议 TLSv1.1 TLSv1.2(可能已缓解)
 LUCKY13 (CVE-2013-0169),实验性可能易受攻击,使用 TLS 的密码块链接 (CBC) 密码套件。请检查补丁
 RC4 (CVE-2013-2566, CVE-2015-2808) 未检测到 RC4 密码套件(OK)
 通过 OpenSSL 和套接字对服务器运行 370 个密码套件测试,按加密强度排序
十六进制代码 密码套件名称 (OpenSSL) 密钥交换 加密 位数 密码套件名称 (IANA/RFC)
-----------------------------------------------------------------------------------------------------------------------------
 xc030 ECDHE-RSA-AES256-GCM-SHA384 ECDH 253 AESGCM 256 TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
 xc028 ECDHE-RSA-AES256-SHA384 ECDH 253 AES 256 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
 xc014 ECDHE-RSA-AES256-SHA ECDH 253 AES 256 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
 xcca8 ECDHE-RSA-CHACHA20-POLY1305 ECDH 253 ChaCha20 256 TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256
 xc077 ECDHE-RSA-CAMELLIA256-SHA384 ECDH 253 Camellia 256 TLS_ECDHE_RSA_WITH_CAMELLIA_256_CBC_SHA384
 x9d AES256-GCM-SHA384 RSA AESGCM 256 TLS_RSA_WITH_AES_256_GCM_SHA384
 xc0a1 AES256-CCM8 RSA AESCCM8 256 TLS_RSA_WITH_AES_256_CCM_8
 xc09d AES256-CCM RSA AESCCM 256 TLS_RSA_WITH_AES_256_CCM
 x3d AES256-SHA256 RSA AES 256 TLS_RSA_WITH_AES_256_CBC_SHA256
 x35 AES256-SHA RSA AES 256 TLS_RSA_WITH_AES_256_CBC_SHA
 xc0 CAMELLIA256-SHA256 RSA Camellia 256 TLS_RSA_WITH_CAMELLIA_256_CBC_SHA256
 x84 CAMELLIA256-SHA RSA Camellia 256 TLS_RSA_WITH_CAMELLIA_256_CBC_SHA
 xc051 ARIA256-GCM-SHA384 RSA ARIAGCM 256 TLS_RSA_WITH_ARIA_256_GCM_SHA384
 xc061 ECDHE-ARIA256-GCM-SHA384 ECDH 253 ARIAGCM 256 TLS_ECDHE_RSA_WITH_ARIA_256_GCM_SHA384
 xc02f ECDHE-RSA-AES128-GCM-SHA256 ECDH 253 AESGCM 128 TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
 xc027 ECDHE-RSA-AES128-SHA256 ECDH 253 AES 128 TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
 xc013 ECDHE-RSA-AES128-SHA ECDH 253 AES 128 TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
 xc0a0 AES128-CCM8 RSA AESCCM8 128 TLS_RSA_WITH_AES_128_CCM_8
 xc09c AES128-CCM RSA AESCCM 128 TLS_RSA_WITH_AES_128_CCM
 xc076 ECDHE-RSA-CAMELLIA128-SHA256 ECDH 253 Camellia 128 TLS_ECDHE_RSA_WITH_CAMELLIA_128_CBC_SHA256
 x9c AES128-GCM-SHA256 RSA AESGCM 128 TLS_RSA_WITH_AES_128_GCM_SHA256
 x3c AES128-SHA256 RSA AES 128 TLS_RSA_WITH_AES_128_CBC_SHA256
 x2f AES128-SHA RSA AES 128 TLS_RSA_WITH_AES_128_CBC_SHA
 xba CAMELLIA128-SHA256 RSA Camellia 128 TLS_RSA_WITH_CAMELLIA_128_CBC_SHA256
 x41 CAMELLIA128-SHA RSA Camellia 128 TLS_RSA_WITH_CAMELLIA_128_CBC_SHA
 xc050 ARIA128-GCM-SHA256 RSA ARIAGCM 128 TLS_RSA_WITH_ARIA_128_GCM_SHA256
 xc060 ECDHE-ARIA128-GCM-SHA256 ECDH 253 ARIAGCM 128 TLS_ECDHE_RSA_WITH_ARIA_128_GCM_SHA256
 通过套接字运行客户端模拟(HTTP)
 Android 4.2.2 TLSv1.0 ECDHE-RSA-AES256-SHA, 521 位 ECDH (P-521)
 Android 4.4.2 TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384, 521 位 ECDH (P-521)
 Android 5.0.0 TLSv1.2 ECDHE-RSA-AES256-SHA, 521 位 ECDH (P-521)
 Android 6.0 TLSv1.2 ECDHE-RSA-AES128-GCM-SHA256, 256 位 ECDH (P-256)
 Android 7.0 TLSv1.2 ECDHE-RSA-CHACHA20-POLY1305, 253 位 ECDH (X25519)
 Chrome 65 Win 7 TLSv1.2 ECDHE-RSA-AES128-GCM-SHA256, 253 位 ECDH (X25519)
 Chrome 70 Win 10 TLSv1.2 ECDHE-RSA-AES128-GCM-SHA256, 253 位 ECDH (X25519)
 Firefox 59 Win 7 TLSv1.2 ECDHE-RSA-AES128-GCM-SHA256, 253 位 ECDH (X25519)
 Firefox 62 Win 7 TLSv1.2 ECDHE-RSA-AES128-GCM-SHA256, 253 位 ECDH (X25519)
 IE 6 XP 无连接
 IE 7 Vista TLSv1.0 AES128-SHA, 无前向保密性
 IE 8 Win 7 TLSv1.0 AES128-SHA, 无前向保密性
 IE 8 XP 无连接
 IE 11 Win 7 TLSv1.2 ECDHE-RSA-AES256-SHA384, 256 位 ECDH (P-256)
 IE 11 Win 8.1 TLSv1.2 ECDHE-RSA-AES256-SHA384, 256 位 ECDH (P-256)
 IE 11 Win Phone 8.1 TLSv1.2 AES128-SHA256, 无前向保密性
 IE 11 Win 10 TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384, 256 位 ECDH (P-256)
 Edge 13 Win 10 TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384, 256 位 ECDH (P-256)
 Edge 13 Win Phone 10 TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384, 256 位 ECDH (P-256)
 Edge 15 Win 10 TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384, 253 位 ECDH (X25519)
 Opera 17 Win 7 TLSv1.2 ECDHE-RSA-AES256-SHA, 256 位 ECDH (P-256)
 Safari 9 iOS 9 TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384, 256 位 ECDH (P-256)
 Safari 9 OS X 10.11 TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384, 256 位 ECDH (P-256)
 Safari 10 OS X 10.12 TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384, 256 位 ECDH (P-256)
 Apple ATS 9 iOS 9 TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384, 256 位 ECDH (P-256)
 Tor 17.0.9 Win 7 TLSv1.0 ECDHE-RSA-AES256-SHA, 256 位 ECDH (P-256)
 Java 6u45 TLSv1.0 AES128-SHA, 无前向保密性
 Java 7u25 TLSv1.0 ECDHE-RSA-AES128-SHA, 256 位 ECDH (P-256)
 Java 8u161 TLSv1.2 ECDHE-RSA-AES256-SHA384, 256 位 ECDH (P-256)
 Java 9.0.4 TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384, 256 位 ECDH (P-256)
 OpenSSL 1.0.1l TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384, 521 位 ECDH (P-521)
 OpenSSL 1.0.2e TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384, 256 位 ECDH (P-256)

您正在尝试使用的端点的 FQDN 是什么?它是 epfl.ch 的子域名吗?

当然:s3.epfl.ch

大家好。

我在自托管的 MinIO 实例上也遇到了这个问题。

你们是否愿意支持类似 s3_verify_ssl 的布尔选项用于 S3 连接?

谢谢!

我强烈建议您为所有需求使用有效的 SSL 证书。MinIO 配合 Let’s Encrypt 证书在反向代理后也能正常运行。

1 个赞

我遇到了同样的问题。尝试将备份设置到 MinIO,但收到了相同的错误。

端点看起来是 s3.k8s.domain.comdomain.coms3.k8s.domain.com 都拥有由 Let’s Encrypt 颁发的有效证书,但 k8s.domain.com 没有证书。

如何解决这个问题?