全面进入HTTPS加密时代

新年来临,也有些新变化。在网站方面,我把我所有能换成HTTPS SSL的网站都迁移到了HTTPS SSL——包括我帮忙制作的英国湘味情中餐馆网站,全面加速进入到HTTPS加密时代。
本次升级为HTTPS主要借助于CloudFlare的免费HTTPS证书。由于这些网站也不再使用Media Temple的主机服务,于是改用了更为小众的戈戈主机,流量方面不再宽裕,安全性能方面也不得而知,于是也像土木坛子这个网站一样,启用了CloudFlare的CDN全球加速,再配合HTTPS+HSTS加密,HTTP/2功能也能启用。
因此,使用CloudFlare全球CDN后,可以最大限度提高网站的访问速度,并且节省源主机CSS, JS和图片等静态文件的流量,CloudFlare的反代理DNS能够隐藏源主机IP,进一步提高主机安全性。当然CloudFlare也不是没有缺点,CloudFlare免费CDN下面的HTTPS SSL证书不支持一些过时的浏览器。不过我觉得这些浏览器用户所占比例不大,没有必要迁就他们。
升级到HTTPS后,再到Google网站管理中心更新了一下,很快就收录了新的HTTPS链接。Google对HTTPS的支持力度实在是不一般。
网站开启HSTS严格HTTPS功能并加入HSTS Preload List

从今天开始,土木坛子开启HSTS(HTTP Strict Transport Security)严格强制HTTPS SSL功能。
我一直支持HTTPS,在启用全站HTTPS后,用301的方式将所有HTTP访问请求自动转成HTTPS加密。但这种服务器端301的方式,并不能阻止浏览器到服务器之间HTTP链接被截持,因为此时的通信,并不是HTTPS。
启用HSTS协议后,在初次访问HTTPS后,用户在浏览器中再输入HTTP链接,浏览器本身会将HTTP链接自动转成HTTPS,会更加全面保护访问者的隐私,例如,没有人能在网络上截取你访问过土木坛子上关于艳照门的博文。
显然,使用HSTS的前提条件有两个,用户必须在之前成功用HTTPS访问过网站,浏览器支持HSTS协议。
这个功能实际意义并不是特别大,它相当于解决这么一个问题,以前需服务器端301跳转HTTP到HTTPS实现的功能现在直接在浏览器端自动完成,代替人工输入HTTPS链接——当然也可以用HTTPS Everywhere插件实现。
对于土木坛子倒是有一点小实用,如果你身在某国,你现在支持HSTS协议的浏览器里(Chrome, Firefox, Safari, IE 11+, Opera),直接输入 tumutanzi.com 或 www.tumutanzi.com,能实现访问了,浏览器自动将链接变成 https://tumutanzi.com,而在今天之前是不行的,tumutanzi.com 在到达服务器之前就已经被某墙截断通信。
其实我倒不是主要在乎这个好处,而是出于对新技术的好奇,有了新技术又能轻松支持,为什么不支持呢?相反,对于老旧的技术,比如Windows XP下的IE浏览器不支持SNI,本网站现在就不支持访问。
HTTPS现在普及得越来越快,百度支持收录HTTPS网站后,现在百度里搜索“土木坛子”,也能打得开结果了。原来不支持HTTPS的FeedBurner也支持烧录HTTPS的RSS Feed了(似乎Google还没有忘记FeedBurner这个项目,但谁知道它哪天会杀了它呢?FeedSky域名都打不开了),比如:https://feeds.feedburner.com/tumutanzi 又可以更新了。
我实现HSTS的方法由CloudFlare提供——CloudFlare不仅仅提供CDN功能,在设置中直接开启即可。使用Apache或者Nginx服务器的朋友随便Google一下应该很容易配置好。
配置好HSTS后,还可申请加入浏览器HSTS Preload List [Mozilla, Chromium],申请地址:https://hstspreload.appspot.com/,申请成功后(2015年7月28日更新:土木坛子域名成功被收录,更新2015年10月16日:Chrome更新到46版本后,土木坛子这个域名就正式开始内置强制HTTPS加密了),全球所有主流浏览器都会内嵌你的域名(Chrome, Firefox, Safari, IE 11+等),解决第一次HTTP的问题,你的域名自始至终都将自动使用HTTPS协议。
如果没有HSTS列表的话,就只能借助HTTPS Everywhere List了,已有好心人把土木坛子的域名 tumutanzi.com 收录到HTTPS Everywhere List里面了。
百度终于支持收录HTTPS SSL加密网站
去年我预言:“估计百度在不久的将来可能完全支持索引收录HTTPS网站”,现在预言实现。昨天百度发布收录HTTPS站点公告:
亲爱的网站管理员:
从今天开始,百度放开对HTTPS站点的收录,HTTPS站点不需要再做任何额外的工作就可以被百度顺利抓收。
在此之前,百度站长学院曾发表文章,指导HTTPS站点制作http可访问版便于百度抓收。技术升级后,百度视同一个域名的http版和HTTPS版为一个站点,优先收录HTTPS版。建议站长关闭HTTP版,或者将HTTP页面直接跳转到对应的HTTPS页面。
我一般不太关注百度,因为百度代表落后、保守的搜索引擎。现在看来,百度也被不断进步的网络技术推着前进。
之前我就发现百度开始收录土木坛子,估计就在试水收录HTTPS网站。后来,百度开启了其自身的HTTPS功能,虽然未必是出于保护用户的隐私目的,但即使是为了保护它的竞价搜索利益,开启HTTPS也是可取的。
现在百度又全面支持收录HTTPS网站,向Google甚至国内其它小搜索引擎看齐,这将进一步推动互联网HTTPS加密化进程。
毕竟百度是中文搜索引擎目前的龙头老大,百度倒向HTTPS,将促使更多的中文网站采用HTTPS加密,由于HTTPS SSL证书的费用,百度这一举动甚至可能减少垃圾采集网站的数量,当然将来有免费的HTTPS证书后又可能是另外一回事。
无论百度出于什么目的,百度在开启自身HTTPS搜索后,又支持收录HTTPS网站,这是一个值得称赞的行为,我觉得也是互联网历史上值得记录的一天。
如何优惠购买HTTPS SSL证书?

相信不少人知道百度的广告和统计JS代码DDoS国外GitHub的事情(沉痛同情那些托管到GitHub Pages上的国内Jekyll静态博客们)。
即使不论Google对HTTPS SSL网站是否厚爱有加,我觉得现在个人博客网站强制采用HTTPS SSL应该成为标准配置,就像到邮局寄信,你不希望你的信件在邮路中是公开的,互联网早期因为应用有限没有想到流量加密,现在网站加密必须成为标配。
采用HTTPS后,能保证网站内容在浏览者和服务器之间加密,且不会被任何人动手脚,防止访问者访问网站时被无良ISP注入广告,也能避免遭受攻击GitHub式的链路劫持。
采用HTTPS对主机服务器并不会带来多余的压力,至少我使用HTTPS三年来,没有见过服务器产生过问题,比我流量小的网站就更不用担心了。
使用HTTPS也不贵。一份SSL证书一般也就一年10美元不到的价格。我从QuickHostUK买到的3年SSL证书比较便宜,5英镑一年。这份SSL证书是COMODO颁发的Positive SSL证书,价格很便宜,但使用过程中没有任何问题。
我后来发现,从其它地方购买SSL证书更优惠,同样这份COMODO的Positive SSL证书,从namecheap.com买是9美元一年,而从ssls.com购买,三年只要15美元,比QuickHostUK的代理价格还要便宜,而ssls.com本身就是namecheap.com旗下成员。当然,还有更便宜的,GogetSSL还有三年10.95美元的Comodo SSL证书。
看来购买SSL证书还是要从名气小一些但靠谱的小公司买,代理价格更有优惠,反正到手后的证书和大公司得来的一样。
免费的SSL证书也有(StartSSL和CloudFlare的SSL证书),但我个人觉得最好不要用免费或者个人代理的SSL证书,StartSSL曾经被GFW问候过,前一阵国内某个人代理便宜通配SSL证书到现在被吊销了。
再说,国外的SSL证书也不贵。
更新网站HTTPS SSL证书

当初是为了获得主机商ICDSoft的独立IP,土木坛子配置了免费SSL证书(ICDSoft不单独销售独立IP)。后来觉得网站HTTPS加密是未来趋势,就升级到付费SSL证书,并强制性HTTPS加密网站,更好地保护浏览者的隐私。
当初的付费SSL证书购买于Godaddy,两年价钱约10多美元。前几天收到Godaddy发来的邮件,提醒我的SSL证书还有两个月到期,并说给我一个忠诚客户价格,139美元两年,这个价格只能让我背判Godaddy。
其实我早已将自己的和代理别人的域名从Godaddy迁到Namecheap,最后再迁到了提供免费WHOIS隐私保护和价格稳定的Namesilo,至于SSL证书,我早就不想用Godaddy了。
我看上了赖博士的主机商QuickHostUK代理的SSL证书,五年价格只需15英镑左右。不过,当我购买了五年有效期的SSL证书后,发现居然无法生成加密私钥。
一番沟通后,说是从2015年3月份开始,每份SSL证书的有效期最多只能39个月,他们网站由于来不及升级更新(现在已经更新过了),导致5年SSL证书还在销售。客服只好给我退款,我再购买了3年的SSL证书,价格依然是15英镑左右。
我为什么想购买SSL长期证书?一是不想每年都麻烦地安装更新证书,二是ICDSoft是每次安装更新证书需要收10美元服务费用。
早知道这样,我就在3月份之前提前放弃Godaddy的SSL证书,使用上那个5年有效期的SSL证书了,不但省事,还能省上20英镑左右。计划赶不上变化。
广告:有朋友咨询我ICDSoft优惠价格,作为ICDSoft长期铁杆客户,我有较大的优惠折扣,对ICDSoft主机很感兴趣的朋友,可以到土木坛子的店去购买。
百度HTTPS加密搜索有什么用?

前段时间,我曾提到百度支持移动端HTTPS SSL加密搜索,用以保护用户隐私。最近,百度开始支持PC端HTTPS SSL加密搜索,现在可以启用 https://www.baidu.com 搜索。我很少对百度有好感,但仍要实事求是地说:这是百度值得夸赞的一个举动。
不过,有墙外媒体说百度启用加密搜索“意义不大”,某活动人士甚至说:
“百度采用SSL搜索加密其实没有意义,几乎没有人有这样的需求,百度上也没有什么特别的信息——‘不良’或‘违法’的信息——可以搜索。”
这样的说法明显片面甚至带着有色眼镜。百度支持HTTPS与搜索“违法”信息是两码事,支持HTTPS是保护用户隐私,而不是提供未经审查的搜索。试想百度是天朝的正规公司,怎么可能违背“法律”推出像Google那样未经审查的内容呢?
那百度的HTTPS版本对普通搜索用户的隐私保护在哪里?先看几个例子。
- 有网友告诉我:之前公司一名女经理同事,就发现她经常百度搜索:“做爱射到里面会不会怀孕安全期怎么算”之类的信息。
- 用户在百度搜索一个关键词“人流”,很快就会有医院打电话过来推销人流手术广告。
- 几个月前我在移动端使用百度搜索过疾病症状,当天就有医院打电话过来拉单。然后在网上百度搜索了几次EMS,就有邮包诈骗电话打过来。
以上几个网友举出的真实例子,足以说明百度用户的网络隐私被侵犯了。在不使用HTTPS安全链接版本百度情况下,用户的网络隐私有可能在用户和百度服务器之间的网络中途被人截取(公司网管、ISP网络宽带提供商、黑客等),也有可能是百度公司出卖了用户的隐私。
如果不是百度出卖用户泄漏隐私,那么百度用户使用加密版搜索 https://www.baidu.com,就可以几乎100%避免以上几个隐私泄露的例子。
为什么这样说?在HTTPS通信协议下,用户和百度服务器之间的通信内容都进行了加密。打个比方,16岁的小明和15岁的小花早恋写情书,过去每封信都被父母偷偷查看,现在小明和小花采用暗语(HTTPS)加密通信,父母虽然知道两人之间有信件来往,却看不懂内容是什么,如此一来通信隐私就被保护了。
因此,上面提到的那位女经理现在如果用安全链接 https://www.baidu.com 搜索,公司的网络管理员就再也看不到她搜索的所有内容。搜索隐私信息本身没有问题,有问题的是偷看隐私的人,可是这样的事情很难靠道德和宽泛的法律来避免,强大的技术是一道有力保障。HTTPS保障不只是用户隐私,更是通信安全。
在网络安全和个人隐私越来越受到重视的今天,HTTPS SSL将会越来越流行,Google早就全面采用HTTPS加密搜索保护用户隐私,跟随者百度采用HTTPS应当值得肯定。百度作为墙内较大的互联网公司,有必要有责任保护其用户的网络隐私和安全。我估计百度在不久的将来可能完全支持索引收录HTTPS网站(2015年5月25日更新:百度发布公告称,从今天开始,百度放开对https站点的收录,https站点不需要再做任何额外的工作就可以被百度顺利抓收),Google早就支持了,这是趋势。
土木坛子早已全面采用HTTPS加密访问,除了你没有谁知道你浏览了本篇博文。