美文网首页
全站HTTPS升级系列(一)升级前的科普工作

全站HTTPS升级系列(一)升级前的科普工作

作者: 删我丶 | 来源:发表于2019-07-31 13:49 被阅读0次

    一、为什么要进行全站HTTPS升级?

    安全性

    相对于HTTP协议的明文传输,HTTPS的传输是加密的,可防止数据在传输过程中被黑客恶意篡改和窃取,有效防止了中间人攻击(本产品11月份就被黑客进行了一次中间人攻击,网站页面被插入了一些非法内容,导致当日访问速度如同龟爬。也由此下定了全站HTTPS升级改造的决心)

    更高的SEO收录排名

    HTTPS可以对接入HTTPS协议的网站获取更高的收录排名

    防止错误警告提示

    新版的 Chrome 浏览器如果发现当前网站不支持HTTPS协议,会在右上角提示『不安全』三个字,提示『请勿在该网站输入任何敏感信息』,对用户的信赖感造成一定负面影响

    二、HTTPS和HTTP的有什么关系?

    • HTTPS是由SSL+HTTP协议构建。https在http通信协议的基础上,基于ssl,增加了一个加密层
    • 想要接入HTTPS,必须申请创建一SSL证书,存放在服务器上。SSL 证书是由受信任的数字证书颁发机构 CA颁发。注意,SSL证书是有有效期的,一般为三个月到一年
    • HTTP协议默认走80端口,HTTPS协议默认走443端口(记住这一点很重要!)

    三、为什么要选取泛域名证书,而不是其他类型的的证书?

    SSL 证书分为单域名证书多域名证书泛域名证书

    单域名证书:

    一个单域名证书只能保护它自己。例如一个msh.com的证书,只能保护它自己,保护不了它下面的子域名,例如b.msh.com ,c.msh.com是保护不了的。 缺点: 如上所示,意味着我每增加一个子域名,就需要重新生成一次该子域名对应的的SSL证书

    多域名证书:

    一个证书可以保护指定的多个域名。例如一个多域名证书既可以保护指定的msh.com,也能保护指定的b.msh.comc.msh.com,或者同级的nsh.com

    缺点: 虽然可以指定多域名,但问题在于我也不知道将来我会增加什么子域名。这意味着我到时我可能还需要重新生成一次。个人感觉,多域名证书有点鸡肋。

    泛域名证书:

    一个对应为*.msh.com的泛域名证书,可以保护msh.com域名以及它下面所有的次一级的子域名例如b.msh.comc.msh.com

    优势:如上所示,也意味着我可以一劳永逸,泛域名证书生成后,可以适用于该域名证书下的所有次一级的子域名。所以说是泛域名证书是三种类型证书中最实用的证书。

    注意: 该证书是保护不了更下一级的abc.test.msh.com域名的,如果你想要保护abc.test.msh.com,需要申请一个*.test.msh.com的泛域名证书)

    四、选择付费型证书还是免费型证书?

    SSL证书分为付费型免费型证书。

    付费型:

    通过赛门铁克GeoTrust颁发,安全级别更高。此外,用他们的证书出安全事故的话,机构会提供几十万乃至上千万的美金赔付。当然了,代价是证书比较昂贵,一个单域名证书一年5000 RMB,一个泛域名证书一年40000 RMB,抵得上一年服务器租赁的成本了。

    免费型:

    Let's Encrypt等数字证书机构颁发,永久免费。免费的同时,又有着极高的浏览器兼容性和安全性。更重要的是,2018年1月份开始,Let's Encrypt开始正式泛域名证书了。

    结论:从适用范围来说,显然选择泛域名证书是最优解。而对于严格控制成本(qiong bi)的中小型互联网公司,基于Let's Encrypt生成自己的泛域名证书,是最最优解

    五、为什么要通过 acme.sh 生成泛域名证书,而不是其它方式?

    通过Letsencrypt生成证书方式有三种:

    FreeSSL.org

    可以访问FreeSSL.org的官网在线生成,缺点是那就是同一主域名下的证书数量是有限制的,一般是20个,数量远不能满足正常使用,而且到有效期需要手动更换证书。因此太过鸡肋

    Certbot

    可以安装后再服务器上生成证书, 但是自动化程度远远比不上 acme.sh

    acme.sh

    他的优势简单两句话就可以说明白

    • 安装很简单,一条命令搞定
    • 自动化程度很高,支持自动dns校验,自动更新证书

    下一篇就介绍基于 acme.sh从Letsencrypt生成免费的泛域名证书

    系列文章

    全站HTTPS升级系列(一)升级前的科普工作

    全站HTTPS升级系列(二)基于 acme.sh从Letsencrypt生成免费的泛域名证书

    全站HTTPS升级系列(三)nginx配置全站HTTPS

    全站HTTPS升级系列(四)项目代码升级改造

    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
    https://juejin.im/post/5c385c0a6fb9a049ac7960be

    相关文章

      网友评论

          本文标题:全站HTTPS升级系列(一)升级前的科普工作

          本文链接:https://www.haomeiwen.com/subject/khnzrctx.html