告别网络威胁,拥抱TLS加密

2017年4月21日更新:因StartCom和WoSign接连曝出证书签发丑闻,Mozilla, Apple和Google已经决定撤销对这两家CA厂商的信任。Alex Sky网站也于2016年8月31日全部改为Let’s Encrypt CA。使用StartSSL的站长应该尽快转用其他CA。 TLS has exactly one performance problem: it is not used widely enough. Everything else can be optimized. ——摘自 istlsfastyet.com 好久没有写日志了,今天想聊聊网络安全,特别是Web安全。随着网络和移动技术的逐渐普及,越来越多的事情现在可以在网上进行。比如,我们在社交网站上发表各种各样的观点、喜好、地理位置,在购物网站上挑选物品,付费购买,在网上交电话费、水电费。个人信息与金钱交易充斥在网络的各个角落,而各种各样的网络攻击也随之而来。在各式各样的网络攻击中,有一类攻击因为门槛低、成功率高而呈现井喷态势,这就是会话劫持攻击。我曾在《WordPress建站心得(三)Web安全与隐私》一文中简单介绍这种攻击和防范,不过因为当时题目所限,没有进一步说明这种攻击对个人的影响。简单来说,会话劫持就是黑客将自己的电脑置于你与你所访问的网站中间,从而获得你与该网站的所有通讯内容,这个内容不仅包括你的cookie(也就是你和网站建立的临时信任关系),还甚至包括你登陆所使用的账户和密码。这是因为在传统的网络连接中,所有的内容都是明文传输的。所有你看到的网址开头为”http://”的网站(或未标注”https://”,如下图),你和它们的通讯都能被截获。这种攻击技术已经如此成熟,以至于完全没有技术支持的人,通过下载一些简单的软件,都能实现这种劫持。除了企业级WIFI和客户端隔离的内网环境外,所有其他网络环境都适合这种攻击。

WordPress建站心得(二)网站架构设计

在上一篇文章《WordPress建站心得(一)前端性能优化》中,我们提到了如何在服务器和网络状况不变的情况下,通过调整优化请求数目和顺序,缩短页面呈现时间,从而提升用户体验。不过,这种优化只是在请求之间的优化,它并不能提升每个请求的响应时间,如果需要继续优化性能,则必须从服务器和网络本身入手。 我们谈到服务器性能,主要有三个比较重要的衡量标准。一是吞吐量,表示网站在一定时间内能有效承载的请求的最大数量,也就是网站能承受多少人同时访问。二是资源消耗,表示网站在处理一定数量的请求时,所消耗的服务器资源,这和网站的成本直接挂钩。三是首包时间,表示网站返回动态(如PHP, JSP)与静态请求(如js,css,jpg)所需要的计算时间。 在这三个标准中,传统的性能优化主要集中在头两个方面,这无可厚非,因为直接涉及到网站的运营成本和覆盖范围。诚然,这三个标准其实相互作用,一个性能优良的网站,必然会有较高的吞吐量,较低的资源消耗,以及较低的首包时间。不过这并非完全正确,因为采用传统方法优化服务器架构,只能在前两方面有所进步。比如,采用web–>application–>db三层服务器集群,中间通过load balancer来动态调配,的确能极大增加吞吐量和降低单服务器资源消耗,但首包时间并不会因此而大大降低,反而会因为服务器之间的网络沟通产生延时。 回到WordPress的例子上面,相信很多站长都和我一样,没有充裕的budget,只是凭个人爱好而建站,必然没有那么多资源建设庞大的服务器集群,但我们同样有很多办法优化我们仅有的vps性能,从而降低首包时间,减少资源消耗,增大吞吐量。这篇文章针对的正是我们这些草根站长。