2010年5月份谷歌已经提供HTTPS加密搜索服务,直到前段时间,为解决“第三方”对用户隐私的嗅探和劫持,百度也推出了全站HTTPS加密搜索服务。搜索引擎对HTTPS页面抓取问题的态度不尽相同,谷歌在算法更新中表示,“同等条件下,使用HTTPS加密技术的站点在搜索排名上更具优势”,而百度则在其2014年9月份的一份公告中表示“百度不会主动抓取HTTPS网页”。综合各方因素,对于普通站长而言,究竟是否要使用HTTPS协议呢?如果要,又该怎么搭建HTTPS站点呢?
HTTP和HTTPS的基本概念
HTTP:是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和应答的标准(TCP),用于从WWW服务器传输超文本到本地浏览器的传输协议。它可以使浏览器更加高效,使网络传输减少。
HTTPS:是以安全为目标的HTTP通道,简单讲是HTTP的安全版,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。HTTPS协议的主要作用可以分为两种:一种是建立一个信息安全通道,来保证数据传输的安全;另一种就是确认网站的真实性。
HTTP与HTTPS有什么区别?
HTTP协议传输的数据都是未加密的,也就是明文的,因此使用HTTP协议传输隐私信息非常不安全。为了保证这些隐私数据能加密传输,于是网景公司设计了SSL(Secure Sockets Layer)协议用于对HTTP协议传输的数据进行加密,从而就诞生了HTTPS。
HTTPS加密、加密、及验证过程如下图:
简单来说,HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,要比http协议安全。
HTTPS和HTTP的区别主要如下:
一、https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。
二、http是超文本传输协议,信息是明文传输,https 则是具有安全性的ssl加密传输协议。
三、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。
四、http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。
HTTPS利与弊
优点:
SEO方面
谷歌曾在2014年8月份调整搜索引擎算法,并称“比起同等HTTP网站,采用HTTPS加密的网站在搜索结果中的排名将会更高”。
安全性
尽管HTTPS并非绝对安全,掌握根证书的机构、掌握加密算法的组织同样可以进行中间人形式的攻击。但HTTPS仍是现行架构下最安全的解决方案,主要有以下几个好处:
1)使用HTTPS协议可认证用户和服务器,确保数据发送到正确的客户机和服务器;
2)HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,要比http协议安全,可防止数据在传输过程中不被窃取、改变,确保数据的完整性;
3)HTTPS是现行架构下最安全的解决方案,虽然不是绝对安全,但它大幅增加了中间人攻击的成本。
缺点:
SEO方面
据ACM CoNEXT数据显示,使用HTTPS协议会使页面的加载时间延长近50%,增加10%到20%的耗电。此外,HTTPS协议还会影响缓存,增加数据开销和功耗,甚至已有安全措施也会受到影响也会因此而受到影响。
而且HTTPS协议的加密范围也比较有限,在黑客攻击、拒绝服务攻击、服务器劫持等方面几乎起不到什么作用。
最关键的,SSL 证书的信用链体系并不安全。特别是在某些国家可以控制 CA 根证书的情况下,中间人攻击一样可行。
经济方面
1、SSL 证书需要钱。功能越强大的证书费用越高。个人网站、小网站没有必要一般不会用。
2、SSL 证书通常需要绑定 IP,不能在同一 IP 上绑定多个域名。IPv4 资源不可能支撑这个消耗。( SSL 有扩展可以部分解决这个问题,但是比较麻烦,而且要求浏览器、操作系统支持。Windows XP 就不支持这个扩展,考虑到 XP 的装机量,这个特性几乎没用。)
3、HTTPS 连接缓存不如 HTTP 高效,大流量网站如非必要也不会采用。流量成本太高。
4、HTTPS 连接服务器端资源占用高很多,支持访客稍多的网站需要投入更大的成本。如果全部采用 HTTPS,基于大部分计算资源闲置的假设的 VPS 的平均成本会上去。
5、HTTPS 协议握手阶段比较费时,对网站的相应速度有负面影响。如非必要,没有理由牺牲用户体验。
搜索引擎对HTTPS的态度
谷歌的态度
谷歌在HTTPS站点的收录问题上与对HTTP站点态度并无什么不同之处,甚至把“是否使用安全加密”(HTTPS)作为搜索排名算法中的一个参考因素,采用HTTPS加密技术的网站能得到更多的展示机会,排名相对同类网站的HTTP站点也更有优势。而且谷歌曾明确表示“希望所有的站长都能将使用HTTPS协议,而非HTTP”更是表明了其对达到“HTTPS everywhere”这一目标的决心。
百度的态度
虽然百度曾表示“不会主动抓取https网页”,但对于“很多https网页无法被收录”也是“耿耿于怀”。去年9月份,百度曾就“https站点如何建设才能对百度友好”问题发布了一篇文章,给出了“提高https站点的百度友好度”的四项建议及具体操作。
此外,近日的“百度全站HTTPS加密搜索”事件也再次彰显了百度对HTTPS加密的重视。可见,百度并不“反感”HTTPS站点,所以“不主动抓取”应该也只是暂时的吧。
我的网站是否需要采用HTTPS加密?
虽然谷歌和百度都对HTTPS“另眼相看”,但这并不意味着站长们都应该把网站协议转换成HTTPS!
早在去年9月份,Moz就针对“采用HTTPS协议”展开了一项调查,结果如下图:
注:调查开展时间在谷歌宣布“使用HTTPS协议的网站可以获得更好的排名”后
如上图所示,在此项调查中,17.24%的站长表示其网站已采用HTTPS协议;24.9%的站长表示正在搭建中;57.85%的站长表示目前仍无此项计划。从这些数据可以看出,当时大部分的站长还是没有选择使用HTTPS协议,那么站长们到底该不该选择有利有弊的HTTPS协议呢?
首先说说谷歌方面,虽然谷歌不断强调“使用HTTPS加密技术的网站能获得更好的排名”,但也不能排除这是“别有用心”之举。
国外分析师就曾针对这一问题表示:谷歌之所以做出这一举动(更新算法,将是否采用HTTPS加密技术作为搜索引擎排名的的一个参考因素)也许并非是为了提高用户的搜索体验和互联网安全问题,只是为了挽回在“棱镜门”丑闻中的“损失”。这是一个典型的打着“牺牲小我”旗号的利我之举。高举“安全影响排名”旗帜、高呼“HTTPS everywhere”口号,然后不费吹灰之力让广大站长们心甘情愿的投入HTTPS协议阵营。
然后是百度方面,虽然百度宣布全站进入HTTPS加密搜索时代,但至今仍“不会主动抓取HTTPS页面”,也从未就“未来是否会调整算法”问题表过态。如果站长在采用HTTPS协议后仍需制作个“http可访问版”、或是通过301重定向“自动跳入https版本”。那么,采用HTTPS协议的代价就不再只是多花money的问题了。
在思考“到底该不该采用HTTPS协议”这个问题时,多考虑考虑怎样做对你的用户更友好吧!
如果你的网站属于电子商务、金融、社交网络等领域的话,那最好是采用HTTPS协议;如果是博客站点、宣传类网站、分类信息网站、或者是新闻网站之类的话,大可不必跟风而行,毕竟HTTPS协议不仅耗钱,浪费精力,而且暂时也不利于网站的SEO工作。
站长如何搭建HTTPS站点
说到HTTPS站点的搭建,就不得不提到SSL协议。SSL是Netscape公司率先采用的网络安全协议。它是在传输通信协议(TCP/IP)上实现的一种安全协议,采用公开密钥技术。SSL广泛支持各种类型的网络,同时提供三种基本的安全服务,它们都使用公开密钥技术。
SSL的作用:
- 认证用户和服务器,确保数据发送到正确的客户机和服务器;
- 加密数据以防止数据中途被窃取;
- 维护数据的完整性,确保数据在传输过程中不被改变。
而SSL证书指的是在SSL通信中验证通信双方身份的数字文件,一般分为服务器证书和客户端证书,我们通常说的SSL证书主要指服务器证书。SSL证书由受信任的数字证书颁发机构CA(如VeriSign,GlobalSign,WoSign等),在验证服务器身份后颁发,具有服务器身份验证和数据传输加密功能。分为扩展验证型(EV)SSL证书、组织验证型(OV)SSL证书、和域名验证型(DV)SSL证书。
SSL证书申请的3个主要步骤:
1、制作CSR文件。
所谓CSR就是由申请人制作的Certificate Secure Request证书请求文件。制作过程中,系统会产生2个密钥,一个是公钥就是这个CSR文件,另外一个是私钥,存放在服务器上。要制作CSR文件,申请人可以参考WEB SERVER的文档,一般APACHE等,使用OPENSSL命令行来生成KEY+CSR2个文件,Tomcat,JBoss,Resin等使用KEYTOOL来生成JKS和CSR文件,IIS通过向导建立一个挂起的请求和一个CSR文件。
2、CA认证。
将CSR提交给CA,CA一般有2种认证方式:
1)域名认证:一般通过对管理员邮箱认证的方式,这种方式认证速度快,但是签发的证书中没有企业的名称;
2)企业文档认证:需要提供企业的营业执照。一般需要3-5个工作日。
也有需要同时认证以上2种方式的证书,叫EV证书,这种证书可以使IE7以上的浏览器地址栏变成绿色,所以认证也最严格。
3、证书的安装。
在收到CA的证书后,可以将证书部署上服务器,一般APACHE文件直接将KEY+CER复制到文件上,然后修改HTTPD.CONF文件;TOMCAT等,需要将CA签发的证书CER文件导入JKS文件后,复制上服务器,然后修改SERVER.XML;IIS需要处理挂起的请求,将CER文件导入。
HTTPS站点搭建教程
从商业机构到政府部门再到个人家庭,越来越多的用户使用网络来处理事务,交流信息和进行交易活动,这些都不可避免地涉及到网络安全问题,尤其是认证和加密问题。特别是在网上进行购物交易活动中,必须保证交易双方能够互相确认身份,安全地传输敏感信息,事后不能否认交易行为,同时还要防止他人截获篡改宝贵信息或假冒交易方。
那么,我们该如何提高站点信息的安全性呢?目前最简单的解决方案就是利用SSL安全技术来实现WEB的安全访问。
免费证书推荐
SSL证书不仅能保障信息安全性,还能提高用户对网站的信任度。但是出于对建站成本的顾虑,很多站长只能作罢。但是,免费在网络上是个永远不过时的市场,有免费的主机空间,也有免费的SSL证书。而且还有消息称,今年夏天思科、Akamai、Mozilla、EFF、IdenTrust和密歇根大学的研究人员将开启Let’s Encrypt CA项目,为更多的网站提供免费SSL证书(如果需要更高级的复杂证书,则需付费)和证书管理服务。并且降低了证书安装的复杂程度,安装时间低至20-30秒。
而需要复杂证书的往往是大中型网站,诸如个人博客之类的小型站点完全可以先尝试免费SSL证书。如果想要购买低价SSL证书可查看IDC点评网的SSL频道。
结语
虽然目前谷歌和百度对于HTTPS的态度都比较积极,但并不代表着站长们应该在短期内把网站协议都换成HTTPS。如果网站是电子商务、金融和社交网络等领域类型,则建议采用HTTPS协议;但如果仅是个人博客、资讯信息网站、新闻网站或宣传类网站等,则不必贸然跟风。因为使用HTTPS协议不仅需要花费金钱,精力,在一定程度上也不利于网站的SEO工作。总之,不必盲目跟风,如果对“网站到底要不要使用HTTPS协议”感到困惑,难以选择,不如究其本质,看看哪种方式更有利于用户体验!
来源:站长之家