在Windows上的Chrome(117.0.5938.132)上出现ERR_ECH_BACK_CERTIFICATE_INVALID错误

exdqitrt  于 2023-10-14  发布在  Go
关注(0)|答案(1)|浏览(123)

问题

直到大约一周前,我的客户网站在一个子域(app.xxx.com)上工作正常,我们从现在到那时都没有推送任何重要内容,但现在在Windows上的Chrome(117.0.5938.132)上,它开始返回此错误:

This site can't be reached
The website at XXX might be temporarily down or it may have been moved permanently to a new web address.
ERR_ECH_FALLBACK_CERTIFICATE_INVALID

看起来工作得很好。证书由LetsEncrypt颁发。

测试

然后我在MacOS和Linux上的最新Chrome上测试了这个功能,它们都运行得很好。我还在其他浏览器上测试了这个功能,比如Firefox和Safari,它们也运行得很好。我还发布了一个新的LetsEncrypt证书,但这没有什么区别。

代码库、服务器环境和其他奇怪之处

有时网站会解决一两分钟,然后停止工作?我们在另一个子域(www.example.com)上有一个应用程序的暂存版本staging.xxx.com,它可以正常工作。我们在同一台服务器上使用Docker容器,所以它们应该是相同的环境。两者之间的代码差异是相当小的,不应该影响这一点,我会想?

帮帮忙

我已经把这个推到我们的网络托管公司尝试和解决,但我想我也应该把它发布出来,看看别人是否有任何经验,这或解决它的方法,因为没有太多有用的(至少对我来说)信息,我已经找到了。现在我告诉我们的客户使用另一个浏览器,但这不是一个长期的解决方案,任何人都满意。
有没有人知道更多关于这个问题或如何解决它?

  • 编辑-发现问题 *

好了,现在我可以确认它与Encrypted Client Hello(ECH)有关,也称为Secure SNIhttps://www.ghacks.net/2022/11/25/google-chrome-canary-gets-experimental-encrypted-client-hello-ech-support/
如果我在Chrome Linux中打开这个标志(Chrome://flags/#restarted-client-hello -然后重新启动浏览器),它现在会抛出这个错误。
在Windows中显式关闭它,网站就可以工作了--所以这就是问题所在。
有关在Cloudflare中实施ECH及其工作原理的更多信息:https://blog.cloudflare.com/announcing-encrypted-client-hello/
如何解决这个问题可能取决于处理您的网站ECH的人(例如:Cloudflare)-但如果有人有任何其他有用的信息,请务必发布。

eeq64g8w

eeq64g8w1#

我找到了一个更好的解决方案,我认为我的情况(和其他CF免费计划)。
如果你不是一个免费的计划-你可以禁用ECH中指出的问题。
否则,您可以尝试在Cloudflare设置中禁用TLS 1.3。
对我来说,问题如下:

  • 我在Cloudflare上有一个免费帐户上使用SSL的域名
  • 显然,Cloudflare现在正在免费帐户中强制执行ECH(https://cmp.onl/tn9e
  • 我有一些不使用Cloudflare代理/SSL的子域
  • 这些子域遇到了问题,大概是因为我的浏览器看到了cloudflare的ECH记录,并假设所有子域都在使用ECH。

从长远来看,我可能需要找出一个更好的解决方案(也许让我的服务器支持ECH?),但现在:
禁用TLS 1.3似乎是一个可行的解决方案-至少对我来说是这样。

相关问题