牛犊网部署https不知不觉也将近四个月了,期间也一直没有再去进行管理和优化,也没有大家担心的那样访问会因为多次握手有所延迟,一直加载挺快。我想主要还是因为我们这一代人终于搭上了“网络运营商降价提速”的国家政策快车,站长们也基本不用再担心担心客户端的网速问题,而去不断优化JS\CSS\HTML代码了。当然,打铁还需自身硬,自己的服务器配置、带宽还是要跟上时代的步伐的。
牛犊网从2014年搬迁至阿里云之后,由于接入的是BGP网络,访问一直飞快。本来近期有把服务器搬迁至百度云的打算,怎奈一直抢不到6个月免费试用的活动资格,又见阿里云在搞全民计算活动,就趁此将牛犊网的服务器进行了一次升级。
我是一个爱折腾的人,花了一天时间将网站打包下载,上传到新服务器,部署完IIS和SQL后就可以直接访问了,因为文件数据分离,搬迁部署也非常容易。到最后环节就是部署域名证书了。结果闲着无事,就去SSL验证网站(https://www.ssllabs.com/ssltest/)去验证了下安全评级,幸运的是,因为我是win2016服务器,自带IIS10,自动开启http/2.0,检测结果是A。但是看到人家的检测结果是A+,心里就痒痒呀,忍不住就去寻找攻略。
从SSL-LABS上的检测结果来看,网站的HSTS和HPKP的头部没有部署,从百度安全指数网(https://bsi.baidu.com/topic/https.html)查询部署漏洞,也可以得到结果。通过两个头部部署要求分析,HSTS的部署方式较为简单,HPKP的较为复杂,而且容易出错,因此,我选择先从HSTS头部部署开始。
这里我只讲IIS10(IIS7 和 IIS8 同样适用)的部署方案:
这里插一句,如果你的评分低于A,而且还是win+IIS服务环境,可以下载IIS Crypto(地址:https://www.nartac.com/Products/IISCrypto/Download)进行最优安全优化,这样就可以到达A级评分了,然后再来部署HSTS。
最后开始部署HSTS,其实非常的简单,在部署了域名证书的前提下,只要在IIS10设置的HTTP响应标头组件中添加HSTS的访问识别时长就可以了。
内容填写如下:
名称:Strict-Transport-Security
值:max-age=31536000; includeSubDomains; preload
这个值是秒,换算过来正好一年。它的意思是接下来的一年时间,强制浏览器浏览页面通过https来访问,这样就可以避免运营商通过http跳转和DNS劫持投放广告了,是不是更安全了呢?
最后,再一次去ssllabs安全评分,就可以拿下A+了,此时成就感爆棚(看图1)~
攻略至此结束,只想说微软的服务器系统设置真的是越来越方便的,部署网络基础环境也是,基本也是无脑留的下一步,下次我找时间讲讲IIS 10如何部署网络基础环境。感谢欣赏和倾听我的唠叨!
作者:琚叶青,牛犊网站长