Categories


Tags


服务器启用HSTS协议

HSTS(HTTP Strict Transport Security)国际互联网工程组织IETF正在推行一种新的Web安全协议,网站可以选择使用HSTS策略,来让浏览器强制使用HTTPS与网站进行通信,以减少会话劫持风险。

采用HSTS协议的网站将保证浏览器始终连接到该网站的HTTPS加密版本,不需要用户手动在URL地址栏中输入加密地址。该协议将帮助网站采用全局加密,用户看到的就是该网站的安全版本。HSTS的作用是强制客户端(如浏览器)使用HTTPS与服务器创建连接。

服务器开启HSTS的方法是,当客户端通过HTTPS发出请求时,在服务器返回的超文本传输协议响应头中包含Strict-Transport-Security字段。非加密传输时设置的HSTS字段无效。

比如,https://www.williamlong.info 的响应头含有Strict-Transport-Security: max-age=31536000; includeSubDomains。这意味着两点:在接下来的一年(即31536000秒)中,浏览器只要向www.williamlong.info或其子域名发送HTTP请求时,必须采用HTTPS来发起连接。比如,用户点击超链接或在地址栏输入 http 网址 ,浏览器应当自动将 http 转写成 https 网址。

对于nginx服务器,只要在添加Strict-Transport-Security这个HTTP头部信息即可。

add_header Strict-Transport-Security "max-age=31536000";

但有一点需要注意,Strict-Transport-Security中的max-age的时间不能小于15552000。

对于Windows server服务器,打开网站目录下的 web.config 这个文件,在相应的位置添加上针对 https 响应的 url 重写规则(黑体部分),并保存。

<?xml version="1.0" encoding="UTF-8"?>

<configuration>

<system.webServer>

<rewrite>

<rules>

<rule name="redirect to HTTPS" enabled="true" stopProcessing="true">

<match url="(.*)" />

<conditions>

<add input="{HTTPS}" pattern="^OFF$" />

</conditions>

<action type="Redirect" url="https://{HTTP_HOST}/{R:1}"

redirectType="Permanent" />

</rule>

</rules>

<outboundRules>

<rule name="Add Strict-Transport-Security when HTTPS" enabled="true">

<match serverVariable="RESPONSE_Strict_Transport_Security"

pattern=".*" />

<conditions>

<add input="{HTTPS}" pattern="on" ignoreCase="true" />

</conditions>

<action type="Rewrite" value="max-age=31536000" />

</rule>

</outboundRules>

</rewrite>

</system.webServer>

</configuration>

开启了HSTS后,你部署SSL/TLS的服务检测得分就可能是A+以上了。这时候就可以加入HSTS Preload List。

HSTS preload list是Chrome浏览器中的HSTS预载入列表,在该列表中的网站,使用Chrome浏览器访问时,会自动转换成HTTPS。Firefox、Safari、Edge浏览器也在采用这个列表。

进入hstspreload官网,输入你的域名,然后检测结果会告诉是否符合加入HSTS Preload List,没有问题的话勾选确定。

当然,加入到了HSTS Preload List后,你可能还需要等待1-2月,待新版本的Chrome和Chromium、Firefox、IE等发布后,你的域名算是正式被各大浏览器承认并强制使用Https访问了。

来源:月光博客


Public @ 2015-12-25 15:56:03

什么是内链死链、链出死链、链入死链

假设您的网站是www.abc.com,第三方网站是www.example.com。内链死链:在您网站上发现同一个域名内的死链,即:如果在http://www.abc.com/1.html上发现了一条死链http://www.abc.com/2.html,那么我们称http://www.abc.com/2.html为内链死链;链出死链:在您网站上发现的链接到其他网站的死链,即:如果在http://w

Public @ 2017-01-11 15:36:57

网站被挂木马与777权限的奥妙

某天VIP大讲堂微信群里的一位同学说网站被人挂马了,查了半天也查不到原因。艺龙SEO负责人刘明问了一句“是不是技术把linux系统里网站的核心目录设置777文件权限了”,同学查后发现果然如此。那么,777是什么?老虎机吗?爱偷懒的程序员都该会心一笑,省事大法啊。这简单的数字背后代表了一套伟大的文件权限控制思想。院长赶紧请刘明长叙一篇,让我们随着刘明的解释慢慢理解。一、当用户访问一个网页这个时候,你

Public @ 2020-02-19 15:37:39

HTTPS改造通用解决方案

搭建HTTPS网站的准备工作简单来说,HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,所以HTTPS网站搭建中比较重要的内容都是围绕着SSL证书进行的。那我们应该做什么准备工作,如下图:网站选型:HTTPS会提升网站安全性,同样也拉高技术成本,所以我们建议一些涉及到用户隐私信息的网站进行HTTPS建设,公开性的内容是根据网站自身情况进行选择;证书申请:①CSR文件制

Public @ 2019-04-11 15:35:47

更多您感兴趣的搜索

0.414490s