Chrome浏览网页证书问题
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Chrome浏览网页证书问题相关的知识,希望对你有一定的参考价值。
浏览某网页,出现:
The site's security certificate is not trusted!
You attempted to reach accounts.youtube.com, but the server presented a certificate issued by an entity that is not trusted by your computer's operating system. This may mean that the server has generated its own security credentials, which Google Chrome cannot rely on for identity information, or an attacker may be trying to intercept your communications.
You cannot proceed because the website operator has requested heightened security for this domain.
只有一个选项:back
没有proceed any,怎么办,如何浏览该网站?
然后点击Manage Certificates管理证书,点击受信任的根证书颁发机构,
选择导入,选择GOAGENT文件夹里的local文件夹,
选择CA.crt 导入,然后再导入certs文件夹里的.youtube.com.crt 重启CHROME 参考技术B 导入前请打开wallproxy-plus文件夹——>local文件夹——>cert,发现有个文件名字叫_ca (注意是文件夹cert前没有1个点),找到了没?马上会用到。
① IE 和chrome浏览器(chrome会默认使用IE证书设置,故只设置IE即OK):
打开IE,点击“设置”,然后在下单菜单中选择“internet选项”,选择“内容”选项卡并点击“证书”,
然后选择“受限制的根证书颁发机构”,并点击“导入”,按提示点下一步即可。“浏览”找到刚才说的cert文件下_ca,点击“下一步”
按提示一直继续,直至出现下图,点“是”即导入成功。追问
我用的是SwithcySharp + goagent,看来goagent和wallproxy-plus是个差不多的东西。
参考技术C 直接找到certs文件夹删掉对应网站的相关证书然后再打开对应的网站,这时候网站就会自动安装一个新的证书然后重启chrome问题迎刃而解 参考技术D 原因是你使用了goagent实现的代理,该方法的缺点就是针对https域名的代理需要伪造证书实现正常访问,所以才会有上述证书异常的提示,同样地故此又会被中间人攻击的风险(新版goagent已去除默认的CA证书,采用本地生成的随机证书,使用旧版的可先去除原先的CA证书,然后导入本地生成的随机证书,故被中间人攻击的风险已大大降低,详细的可以参考issues的说明)Chrome 66将导致国内网站大面积无法正常访问,谨慎更新 | 经验
阅读全文预计耗时7分钟
笔者作为一个业余的开发者以及Chrome(谷歌浏览器)的忠实用户一直在使用Chrome的Dev(开发者)分支版本。这个分支是专供开发者和一些喜欢尝试新鲜功能的用户使用的。
随后笔者发现这个情况是由HTTPS证书错误造成的,有的网页本身的HTTPS证书是可用的,但是其内链的资源(包括CSS、JS)等使用的证书发生了错误导致网页无法正常加载,而有的网页则是本身HTTPS证书就存在问题,例如网易考拉海购、战网等。
经过笔者的一番调查发现这些在更新后突然打不开的网站都有一个共性,他们都使用了来自GeoTrust的HTTPS证书。也就是说在Chrome 66中GeoTrust的证书被列为了不信任,导致Chrome无法正常访问使用了GeoTrust证书的这些网站。
至于为什么会出现这个问题,就要追溯到去年。
去年三月根据Google的调查,全球最大的CA赛门铁克错误地签发了超过三万多张SSL证书,这些证书都是未经同意擅自签发的,而且这些证书中有一些是给一些不存在的域名签发的,还有一部分是Google的域名,这样的证书存在巨大的安全隐患,可能被恶意利用做一些黑客操作。
Google作为一个大厂,也作为世界上目前最主流的浏览器Chrome的开发商,决定正面硬怼赛门铁克。在去年7月Google决定在自家的产品中将赛门铁克的SSL证书列为不信任,并在后期全面不信任来自赛门铁克的SSL证书。
由于在Google眼里赛门铁克在对已签发证书的监管和对签发证书时的审核是存在问题的,所以Google决定分三步对赛门铁克错误签发证书的行为进行惩罚,其中第二步就是在Chrome 66中对来自赛门铁克的证书进行安全报错。
事实证明这一功能确实实装在了Chrome 66中,有的网站我们可以通过错误页面上的“继续访问”正常打开,但是有的网站由于内链静态资源使用了会报安全错误的证书导致网站整体不能正常访问或显示。
GeoTrust、Thawte、RapidSSL都受到了此次Chrome改动的影响,所以这些CA签发的证书也会引起安全错误。
根据这篇文章的说法,Google会在今年下半年发布的Chrome 70中完全不信任来自赛门铁克的证书,届时通过Chrome浏览器所有使用赛门铁克证书的网站都将无法正常访问。
如果你使用的Chrome和笔者一样是Chrome的Dev分支最新版本(即Chrome 66),为了能够正常访问国内的这些网站,笔者建议你将版本降级到Chrome 65(旧版Dev或最新的Beta分支版本)。
由于Chrome本质上是绿色软件,解压就能使用,所以理论上Chrome是允许多版本共存的,但是由于Chrome的安装器没有UI,其本身的安装逻辑不允许非Canary通道版本多版本共存,所以想要达到多版本共存需要进行以下操作:
首先我们先下载好旧版Chrome的安装包,执行安装之后不要急着打开Chrome,我们先使用资源管理器打开Chrome的安装目录,默认是C:\Users\[用户名]\AppData\Local\Google\Chrome\Application。
在这个目录下我们找到chrome.exe,将这个文件重命名为其他名字,例如"new_chrome.exe"。
之后我们找到旧版Chrome的安装包,右键单击,将这个安装包解压缩。目前大家常用的压缩软件都可以解压这个安装包,在这里笔者推荐使用7-zip和WinRAR这两款压缩软件。
解压之后我们能得到一个名为“chrome.7z”的文件,将其解压到一个文件夹内,在文件夹中有一个名为“Chrome-bin”的文件夹,在其中我们可以找到"Chrome.exe"。
我们将这个Chrome.exe复制到之前的Chrome安装目录,打开之后Chrome就是旧版的Chrome了,而新版的Chrome则可以使用new_chrome.exe启动。
当然你直接通过解压缩+复制的方法把chrome.7z解压缩出来的全部内容复制到安装目录或是硬盘的任意位置也是可以成功运行Chrome的。
需要注意的是锁定在任务栏上的Chrome快捷方式即使你更改了Chrome可执行文件的名字,它仍然也会启动新版的Chrome。但是当你启动旧Chrome的时候仍然占用的是任务栏上的这一格,这可能是Win10的一个Bug或是一个特别的特性。
对于这个问题我们只需要先解除Chrome的任务栏锁定,之后运行旧版Chrome,再将其锁定到任务栏,之后我们再通过任务栏启动Chrome的时候启动的就是旧版Chrome了。
在Chrome 65中使用GeoTrust等SSL证书的网站仍然可以正常访问。
根据笔者的实测这次的改动只在Chrome中存在,火狐并没有跟随谷歌一起禁用掉赛门铁克系的SSL证书。在最新版的Firefox Devloper Edition中相关网站仍然可以正常访问。
如果国内的这些网站不更换正在使用的GeoTrust等CA的SSL证书,那么这将意味着在未来我们的Chrome将停留在Chrome 65一段时间。
Google这一次虽然是打着安全的旗号在做这个事情,但是实际上Google本身不信任赛门铁克证书的原因更多的可能是因为赛门铁克擅自签发了Google旗下一些域名的HTTPS证书,这些证书可能会威胁到Google的信息安全或是某些方面的利益。
Google毕竟不作恶,但是其本质还是一家商业企业,但是没办法,以Chrome在浏览器市场的占有率,Google就是这么有话语权。至于这件事是不是Google在作恶,就是仁者见仁智者见智了。
这里是技宅空格,我们明天见。
以上是关于Chrome浏览网页证书问题的主要内容,如果未能解决你的问题,请参考以下文章