当前位置:首页 > 行业动态 > 正文

HTTP严格传输安全协议如何看配置

通过浏览器开发者工具查看响应头中的”Strict-Transport-Security”字段,或使用在线HSTS检测工具查询域名

什么是HTTP严格传输安全协议(HSTS)?

HSTS(HTTP Strict Transport Security)是一种网络安全策略,通过服务器响应头 Strict-Transport-Security 强制客户端(如浏览器)仅通过HTTPS与服务器建立连接,即使用户输入http://,浏览器也会自动升级为https://,防止中间人攻击和协议降级攻击。


如何查看HSTS配置?

通过浏览器开发者工具查看

以Google Chrome为例:

  1. 打开目标网站(需通过HTTPS访问)。
  2. F12 或右键选择 检查 打开开发者工具。
  3. 切换到 Network(网络) 标签页,刷新页面。
  4. 点击任意请求的条目,在右侧 Headers(响应头) 中查找 Strict-Transport-Security 字段。

示例响应头:

HTTP严格传输安全协议如何看配置  第1张

Strict-Transport-Security: max-age=31536000; includeSubDomains; preload

通过命令行工具(如cURL)查看

使用cURL命令获取HTTP响应头:

curl -I https://example.com

输出中查找 Strict-Transport-Security

HTTP/2 200
...
Strict-Transport-Security: max-age=63072000

通过在线工具检测

使用网站安全检测工具(如 SecurityHeaders.io)输入域名,可自动分析HSTS配置


HSTS配置参数解析

参数 作用描述
max-age=秒数 浏览器强制使用HTTPS的时长(单位:秒),默认值为0(不启用HSTS)。
includeSubDomains 是否对子域名生效(如www.example.comsub.example.com均受约束)。
preload 提交域名到浏览器根证书预加载列表(需符合严格要求)。

常见问题与解答

问题1:为什么HSTS不生效?

可能原因:

  1. 未通过HTTPS访问网站(HSTS仅在HTTPS响应中生效)。
  2. max-age值过小或未设置。
  3. 浏览器已缓存旧的HSTS策略(可通过清除缓存或换浏览器测试)。

问题2:如何强制所有子域名启用HSTS?

解答:
在服务器配置中添加 includeSubDomains 参数。

add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" always;

此配置会将HSTS策略应用到所有子域名。


相关工具推荐

工具类型 推荐工具
浏览器插件 HSTS Preload Toolkit(检测并提交域名到预加载列表)
命令行工具 curlopenssl(检查证书和HSTS头)
在线检测平台 HTTPSter、[SecurityHeaders.io](https{securityheaders.io
0