证书和mozroots的单声道问题

11 .net security mono firefox ssl-certificate

我在我的单声道VM上使用此命令

sudo mozroots --import --sync
Run Code Online (Sandbox Code Playgroud)

它似乎是从这个网站获得证书.

然后我尝试连接到我的ssl站点,我得到证书无效的例外.我使用firefox并看到证书是在2010年发布的.我查看了该文件并查看其上次更新时间是2009-05-21 12:50

当在同一台机器上使用firefox时,我可以导航到我想要连接的同一个URL,我没有遇到ssl问题.(没有警报也没有要求我将其添加到例外).

我在这里很困惑.如何更新mono以使用最新的证书?

-edit-我检查了谁签署了我想访问的网站的证书,他们的名字是在certdata.我想知道为什么mono说证书无效.


我试着写这个,我对它要求我导入的3证书是肯定的

certmgr -ssl https://www.site.com/users/login --machine
Run Code Online (Sandbox Code Playgroud)

我再次运行我的应用程序并得到此错误.谷歌搜索错误代码0xffffffff80092012我发现了这一点.

看起来像一个固定的bug,没有应用于2.6.4.或者我可能做错了.我将ServerCertificateValidationCallback设置为我自己的东西,并为此应用程序返回true作为单声道的修复.

System.Net.WebException:获取响应流时出错(写入:身份验证或解密失败.):SendFailure ---> System.IO.IOException:身份验证或解密失败.---> Mono.Security.Protocol.Tls.TlsException:从服务器收到的证书无效.错误代码:0xffffffff80092012

bit*_*tek 2

  1. Mono 的默认安装不信任任何人!
  2. mozroots将从Mozilla 的 LXR下载并导入受信任的根证书。
  3. 阅读Mono 安全常见问题解答

编辑:

  • 从这里尝试最新版本的 Mono 软件包
  • 如果这不起作用,请尝试此处的SVN trunk 版本
  • Bug 606002中,Gonzalo Paniagua Javier 建议:“解决方法是将 ServerCertificateValidationCallback 添加到 ServicePointManager 并忽略此代码的错误。”
  • 我在这方面经验很少,所以我建议联系他寻求进一步的帮助,也许他可以提供帮助。他的电子邮件是 gonzalo@gonzalo.name (他的博客