首页 Firefox 错误代码: SSL_ERROR_RENEGOTIATION_NOT_ALLOWED

Firefox 错误代码: SSL_ERROR_RENEGOTIATION_NOT_ALLOWED

前言

站点搭建在Windows server 2008 r2机器上,原来一直都是走的是http的,最近想弄起https,本来是挺简单的iis弄个https嘛,

  1. 阿里云申请一个免费CA证书,购买地址 点我,之后就是申请,填写申请信息的时候需要勾选这个,这样他自己就会添加一条域名解析记录,第一次我申请没勾选,还自己弄等了半天没申请好,勾选之后申请很快的
    1. image.png
  2. 然后导入到iis中
    1. image.pngimage.png
  3. 需要注意的是必须勾选允许导出此证书,否则绑定的时候将会出现异常
    1. 指定的登录会话不存在。可能已被终止。 (异常来自 HRESULT:0x80070520)
  4. 然后绑定选择证书即可
    1. image.png
  5. 浏览器访问 https://www.zhanghuanglong.com/ 是成功的,我以为就没事了,结果偶尔一次打开firefox自己访问结果不能访问出现以下问题
    1. 连接到 www.zhanghuanglong.com 时发生错误。 在此 SSL 套接字上不允许重新协商。 错误代码: SSL_ERROR_RENEGOTIATION_NOT_ALLOWED
  6. 然后我试了Edge和Chrome都是打开正常,证书都ok,

尝试解决

网上有可以修改firefox的config来解决问题,但是不可能所有人都要这么干。所以必须要解决根本问题,我对比了和正常的另一个linux搭建的https发现,不同的是TLS版本不同,一个是打不开的是TLS1.0,且TLS加密套件是TLS_RSA_WITH_AES_128_CBC_SHA,而打得开是TLS1.2,加密套件 TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,所以我,

  1. 先进行修改TLS版本为1.2 运行 -> regedit -> HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols -> 原来有一个SSL2.0的,所以新建一个TLS1.2image.png 并在Server和Client都新建下面两个项,并把源码的ssl2.0的client 的DisabledByDefault设置为0
    1. DisabledByDefault -> 0
    2. Enabled -> 1
  2. 修改TLS加密套件 运行 -> gpedit.msc -> 管理模板 -> 网络 -> SSL配置设置 可以看见里面的是未配置,自己可以配置密码套件顺序,每次设置之后需要重启电脑,我自己测试了不下六七种加密方式都不行,
  3. 依旧firefox还是报这个,所以无解

解决办法

后来测试过在windows server 2008 r2 sp1机器上搭建的https,firefox访问没问题

所以安装  Windows Server 2008 R2 Service Pack 1 的补丁  windows6.1-KB976932-X64.exe  下载地址 

https://download.microsoft.com/download/0/A/F/0AFB5316-3062-494A-AB78-7FB0D4461357/windows6.1-KB976932-X64.exe

https://download.microsoft.com/download/0/A/F/0AFB5316-3062-494A-AB78-7FB0D4461357/windows6.1-KB976932-X86.exe


参考链接

除另有声明外,本文章Firefox 错误代码: SSL_ERROR_RENEGOTIATION_NOT_ALLOWED采用 知识共享(Creative Commons) 署名-非商业性使用-相同方式共享 3.0 中国大陆许可协议 进行许可。

评论
目录