浏览器
SSL_ERROR_NO_CYPHER_OVERLAP:Firefox 没有共同的加密套件
SSL_ERROR_NO_CYPHER_OVERLAPSSL_ERROR_NO_CYPHER_OVERLAP 的意思是:Firefox 和服务器找不到一个双方都支持的加密套件。 握手在第一步就停了。多数是服务器的套件列表过时或配错,有时是 Firefox 自己的套件设置被改过。
先判断是网站的问题还是你电脑的问题
服务器只开了弱套件是服务器的问题;服务器正常而只有你报错,就查 Firefox 的套件设置。用 SSL 检测 看服务器的套件列表:
curl ssl.sh/example.com
- 检测也协商失败,或者只列出了弱套件:服务器要更新配置。
- 检测用现代套件连接正常:查 Firefox。在
about:config里搜索security.ssl3.,看有没有加粗(被修改)且值为false的条目;再到about:policies看有没有禁用套件的企业策略,并用故障排除模式测试。
原因
这个报错有 5 种原因,共同点是服务器和 Firefox 找不到双方都支持的加密套件,例如服务器只提供 RC4、3DES 这类 Firefox 已不提供的套件。
1. 服务器只提供过时套件
照着老教程抄来的配置,可能只列了 RC4、3DES 等 Firefox 早已不再提供的套件。测试服务器接受什么:
openssl s_client -connect example.com:443 -servername example.com -tls1_2 \
-cipher 'ECDHE+AESGCM:ECDHE+CHACHA20' </dev/null 2>&1 | grep -E "Cipher|alert"
这条失败、而服务器对别的请求有响应,就说明套件列表里缺现代套件。
2. 套件和证书类型对不上
ECDSA 证书却只开了 RSA 认证的 TLS 1.2 套件,或者反过来,都没有可用组合。两类都开上,或者依靠 TLS 1.3。
3. Firefox 套件设置被改过
一些“隐私加固”教程会通过 security.ssl3.* 关掉一批套件。关得太多,遇到只提供一两个套件的网站就会失败。
4. 老设备或嵌入式服务器
有的设备只实现了很少几个套件,只能靠固件更新解决。国内一些老款监控录像机、门禁控制器的网页后台就属于这种情况。
5. 拦截类产品套件有限
拦截 HTTPS 的代理设备提供给 Firefox 的套件列表,可能比真实服务器的窄得多。
在各浏览器/系统上的样子
Chrome 里对应的代码是 ERR_SSL_VERSION_OR_CIPHER_MISMATCH,curl 报 sslv3 alert handshake failure 或 no cipher match。
| 浏览器 | 显示内容 |
|---|---|
| Firefox | “建立安全连接失败”,代码 SSL_ERROR_NO_CYPHER_OVERLAP |
| Chrome / Edge / 360 / QQ 浏览器 | ERR_SSL_VERSION_OR_CIPHER_MISMATCH |
| Safari | Safari 无法建立安全连接 |
| curl | sslv3 alert handshake failure 或 no cipher match |
站长怎么修
推荐配置是 TLS 1.2 用 ECDHE 加 AES-GCM 或 ChaCha20-Poly1305 套件,TLS 1.3 保留默认套件。
1. 用当前推荐的套件配置。 Nginx 的 TLS 1.2 套件加 TLS 1.3 默认值:
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305;
宝塔面板的 SSL 配置里可以直接改加密套件;阿里云/腾讯云 CDN 和负载均衡选择较新的 TLS 安全策略即可,不需要手写套件。
2. 不认识的套件名先用 加密套件查询 查一下,再决定保留还是删掉。
3. 重载并验证。 运行 nginx -t && systemctl reload nginx,再用 curl ssl.sh/example.com 确认协商出的是现代套件。
常见问题
为了打开网站,要不要在 Firefox 里重新启用老套件?
不要。RC4、3DES 这类套件是因为已被攻破或强度不够才被禁用的。让网站方更新服务器;如果是你自己的设备,去找固件更新。
怎么恢复 Firefox 的加密套件设置?
打开 about:config,搜索 security.ssl3.,把加粗显示(被修改过)的条目用重置箭头恢复。用故障排除模式或新建配置文件打开网站,可以快速确认是不是设置的问题。
ECDSA 证书会导致这个错误吗?
会,如果服务器只开了 ECDHE-RSA-* 套件。ECDSA 证书在 TLS 1.2 下需要 ECDHE-ECDSA-* 套件;TLS 1.3 的套件则不区分证书类型。
2026 年服务器应该开哪些加密套件?
TLS 1.3 用默认的 TLS_AES_128_GCM_SHA256、TLS_AES_256_GCM_SHA384、TLS_CHACHA20_POLY1305_SHA256;TLS 1.2 用 ECDHE 密钥交换加 AES-GCM 或 ChaCha20-Poly1305。TLS 配置生成器 能直接给出经过测试的列表。