解决浏览器提示“此网站的安全证书有问题”

有时候在浏览一些网站的时候,点进去的时候不是直接显示内容,而是弹出来一个警告的界面,告诉你此网站的安全证书有问题,浏览器是建议你不要再继续访问了,当然你也可以选择继续访问。那么,你还敢继续访问一个”不安全“的网站吗?会不会对你造成什么损失?本文从原理的角度来看看这个过程里究竟是发生了什么以及我们如何去选择?

为什么提示证书有问题?

客户端通过浏览器向服务端发起 HTTPS 请求时,被「假基站」转发到了一个「中间人服务器」,于是客户端是和「中间人服务器」完成了 TLS 握手,然后这个「中间人服务器」再与真正的服务端完成 TLS 握手。

永久免费SSL证书_永久免费https证书_永久免费ssl证书申请-JoySSL

具体过程如下:

1、客户端向服务端发起 HTTPS 建立连接请求时,然后被「假基站」转发到了一个「中间人服务器」,接着中间人向服务端发起 HTTPS 建立连接请求,此时客户端与中间人进行 TLS 握手,中间人与服务端进行 TLS 握手;

2、在客户端与中间人进行 TLS 握手过程中,中间人会发送自己的公钥证书给客户端,客户端验证证书的真伪,然后从证书拿到公钥,并生成一个随机数,用公钥加密随机数发送给中间人,中间人使用私钥解密,得到随机数,此时双方都有随机数,然后通过算法生成对称加密密钥(A),后续客户端与中间人通信就用这个对称加密密钥来加密数据了。

3、在中间人与服务端进行 TLS 握手过程中,服务端会发送从 CA 机构签发的公钥证书给中间人,从证书拿到公钥,并生成一个随机数,用公钥加密随机数发送给服务端,服务端使用私钥解密,得到随机数,此时双方都有随机数,然后通过算法生成对称加密密钥(B),后续中间人与服务端通信就用这个对称加密密钥来加密数据了。

4、后续的通信过程中,中间人用对称加密密钥(A)解密客户端的 HTTPS 请求的数据,然后用对称加密密钥(B)加密 HTTPS 请求后,转发给服务端,接着服务端发送 HTTPS 响应数据给中间人,中间人用对称加密密钥(B)解密 HTTPS 响应数据,然后再用对称加密密钥(A)加密后,转发给客户端。

从客户端的角度看,其实并不知道网络中存在中间人服务器这个角色。

那么中间人就可以解开浏览器发起的 HTTPS 请求里的数据,也可以解开服务端响应给浏览器的 HTTPS 响应数据。相当于,中间人能够 “偷看” 浏览器与服务端之间的 HTTPS 请求和响应的数据。

但是要发生这种场景是有前提的,前提是用户点击接受了中间人服务器的证书。

中间人服务器与客户端在 TLS 握手过程中,实际上发送了自己伪造的证书给浏览器,而这个伪造的证书是能被浏览器(客户端)识别出是非法的,于是就会提醒用户该证书存在问题。

证书有问题还能访问吗?

如果用户执意点击「继续浏览此网站」,相当于用户接受了中间人伪造的证书,那么后续整个 HTTPS 通信都能被中间人监听了。

所以,这其实并不能说 HTTPS 不够安全,毕竟浏览器都已经提示证书有问题了,如果用户坚决要访问,那不能怪 HTTPS ,得怪自己手贱。那么问题来了,我还能访问吗?

答案是可以!SSL证书(或者说HTTPS)不是网站访问的必须品,仍然有相当多的网站都没有装SSL。很多高校和政务网站就没有,依然可以很好的访问。只是会提示不安全而已。

为什么好多政务网站以及高校网站没有安装SSL证书开启https?其实有免费专属SSL证书可用

不过为了安全起见,对于陌生的网站,如果显示不安全,还是不要在访问。就算坚持访问,也千万不要输入敏感信息,例如账号、密码等。

HTTPS 一定安全可靠吗?

HTTPS 协议本身到目前为止还是没有任何漏洞的,即使你成功进行中间人攻击,本质上是利用了客户端的漏洞(用户点击继续访问或者被恶意导入伪造的根证书),并不是 HTTPS 不够安全。

如果你的电脑中毒了,被恶意导入了中间人的根证书,那么在验证中间人的证书的时候,由于你操作系统信任了中间人的根证书,那么等同于中间人的证书是合法的。

这种情况下,浏览器是不会弹出证书存在问题的风险提醒的。

这其实也不关 HTTPS 的事情,是你电脑中毒了才导致 HTTPS 数据被中间人劫持的。

如何解决安全证书问题?

那当然是安装正经安全可靠的SSL证书了。

还是选择随大流,开启全站的https吧。提示个不安全,直接让网站的流量收到很大损失!

免费的SSL证书现在市面上品牌有很多。但是付费的和免费的多少在安全上、服务上还是有点差距的。付费SSL证书和免费SSL证书简单对比及个人博客选购SSL建议将其进行了简单的对比。我的观点也很明确,对于企业而言,购买付费的SSL证书是非常有必要的。

我个人还是推荐一款国内公司营销的SSL证书商家——JoySSL,主要是价格比较便宜,有90天免费使用(实际上可以一直免费续签,类似证书Let’s Encrypt吧),付费版也很划算,几十块钱一年,在付费版证书里也已经算非常便宜的了。 JoySSL品牌提供90天免费证书,包括单域名、多域名、通配符等所有适配范围。

注册时输入注册码230912即可获取。

永久免费SSL证书_永久免费https证书_永久免费ssl证书申请-JoySSL

设备完美兼容,兼容99.9%以上浏览器和智能终端设备。根据我的亲测,在主流浏览器上是完美支持的!

  • 48
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
浏览器安装了证书但仍然提示安全的原因可能有以下几种情况: 1. 证书链不完整:浏览器通过验证证书链来确定证书的有效性。如果证书链中的某个证书缺失或不正确,浏览器就无法验证该证书的有效性,从而提示安全。确保您在生成证书时指定了正确的中间证书或根证书,并将其包含在证书链中。 2. 证书过期:证书有一个有效期限,在到期之后就会失效。如果您使用的证书已经过期,浏览器提示安全。请确保您生成的证书在有效期内,并在到期前进行更新。 3. 域名不匹配:证书是与特定域名相关联的。如果您的证书是针对一个域名生成的,而您在浏览器中访问的是不匹配的域名,浏览器提示安全。确保您的证书与您要访问的域名匹配。 4. 自签名证书:如果您使用的是自签名证书,而不是由可信任的第三方机构颁发的证书浏览器会默认将其标记为不安全。要避免这种情况,您可以考虑使用由公认的CA(Certificate Authority)颁发的证书。 5. 浏览器缓存:有时浏览器可能会缓存旧的证书信息,导致仍然显示不安全提示。您可以尝试清除浏览器缓存并重新加载页面,看是否解决问题。 如果您遇到浏览器提示安全问题,可以检查以上可能的原因,并进行相应的调整和修复。如果问题仍然存在,建议参考浏览器的错误提示或者查看服务器日志,以便获取更具体的错误信息。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值