网站建设

网站建设

了解最新的网站建设动态、行业资讯和技术分享

关于HSTS安全协议的全面详细解析

2023-04-27 网站建设 8619 次阅读

HTTP 严格传输安全(HSTS)是一种安全功能,web 服务器通过它来告诉浏览器仅用 HTTPS 来与之通讯,而不是使用 HTTP。HSTS 是网站从 HTTP 到 HTTPS 中网站性能及安全优化非常重要的一个步骤,能够解决和兼容 HTTPS 中的一些不足之处。HSTS 在全站 HTTPS 下有一个较大的正向作用,推荐使用。

一、HSTS 是什么?

国际互联网工程组织 IETE 正在推行一种新的 Web安全协议HTTP Strict Transport Security(HSTS)。采用 HSTS 协议的网站将保证浏览器始终连接到该网站的 HTTPS 加密版本,不需要用户手动在 URL 地址栏中输入加密地址。该协议将帮助网站采用全局加密,用户看到的就是该网站的安全版本。

HSTS 的作用是强制客户端(如浏览器)使用 HTTPS 与服务器创建连接。服务器开启 HSTS 的方法是,当客户端通过 HTTPS 发出请求时,在服务器返回的超文本传输协议响应头中包含 Strict-Transport-Security 字段。非加密传输时设置的 HSTS 字段无效。

HTTPS 最典型的用户访问过程

通常我们访问一个网站时,一般在浏览器中只输入网站地址,而不输入协议名。比如访问合肥网站建设公司梦扬科技网站,如果直接输入网址 https://e926.come926.com 时,这就给了中间人攻击的一个机会,重定向会可能会被破坏,从而定向到一个恶意站点而不是应该访问的加密页面。HTTP 严格传输安全(HSTS)功能使 Web 服务器告知浏览器绝不使用 HTTP 访问,在浏览器端自动将所有到该站点的 HTTP 访问替换为 HTTPS 访问。

即使你打开网站看到的是全站 HTTPS 状态 ,你是因为我们在服务器上做过301/302 跳转到 https://www.e926.com这个地址的, HTTPS 网站的做法是对用户的 HTTP 访问做 302 跳转到 HTTPS,并重新建连。

那么问题也就来了,在这个跳转的过程中就有两个不足之处:

  • 整个通信过程中的前两个 RT 是没有意义的;
  • 使用了不安全的 HTTP 通信,万一你是在提交敏感数据呢。

HSTS 的出现就是解决这些问题的。HSTS 的作用除了节省 HTTPS 通信 RT 和强制使用 HTTPS ,还包括:

  • 阻止基于SSLStrip 的中间人攻击;
  • 万一证书有错误,则显示错误,用户不能回避警告。

HSTS 的工作机制可描述如下:服务器端配置支持 HSTS 后,会在给浏览器返回的 HTTP 首部中携带 HSTS 字段。浏览器获取到该信息后,会将所有 HTTP 访问请求在内部做307跳转到 HTTPS,而无需任何网络过程,从而提高了兼容性,这个机制对于不支持 HTTPS 的搜索引擎来说也是非常友好的做法。

目前大部分浏览器对 HSTS 的支持已经相当完美,具体各浏览器和版本的支持情况可以在http://caniuse.com/#search=HSTS上查看。 但是 HSTS 是有缺陷的,第一次访问网站的客户端,HSTS 并不工作。 要解决这个问题,就要了解我们下面要讲解的 HSTS preload list。

HSTS preload list 是什么?

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

加入 HSTS preload list 所需条件:

  • 有效的证书;
  • 将所有 HTTP 流量重定向到 HTTPS;
  • 确保所有子域名启用 HTTPS,特别是 www 子域名。

同时输出的 HSTS 响应头部需要满足以下条件:

  • max-age 至少需要 18 周,10886400 秒
  • 必须指定 includeSubdomains 参数
  • 必须支持 preload 参数

一个典型满足 HSTS preload list 的响应头部为:Strict-Transport-Security: max-age=63072000; includeSubDomains; preload

从申请到审核通过,时间在几天到几周不等。值得一提的是,从审核通过到正式加入到 Chrome 的 stable release 版本中还需要一段时间,因为要经过 canary、dev、beta 以及 stable progression。

HSTS 的优势及必要性

简单说就是强制客户端使用 HTTPS 访问页面。有效避免了中间人对 80 端口的劫持。但是这里存在一个问题:如果用户在劫持状态,并且没有访问过源服务器,那么源服务器是没有办法给客户端种下 Strict-Transport-Security 响应头的(都被中间人挡下来了)。

启用 HSTS 不仅仅可以有效防范中间人攻击,同时也为浏览器节省来一次 302/301 的跳转请求,收益还是很高的。我们的很多页面,难以避免地出现 http 的链接,比如 help 中的链接、运营填写的链接等,这些链接的请求都会经历一次 302,对于用户也是一样,收藏夹中的链接保存的可能也是 http 的。

307 状态码

在 GET、HEAD 这些幂等的请求方式上,302、303、307 没啥区别,而对于 POST 就不同了,大部分浏览器 都会 302 会将 POST 请求转为 GET,而 303 是规范强制规定将 POST 转为 GET 请求,请求地址为 header 头中的 Location,307 则不一样,规范要求浏览器继续向 Location 的地址 POST 内容。

而在 HSTS 中,307 可以被缓存,缓存时间根据 max-age 而定,一般建议缓存 1 年甚至更长。

HSTS 存在的坑

  1. 纯 IP 的请求,HSTS 没法处理,比如 http://2.2.2.2 , 即便响应头中设置了 STS,浏览器也不会理会(未测试)
  2. HSTS 只能在 80 和 443 端口之间切换,如果服务是 8080 端口,即便设置了 STS,也无效(未测试)
  3. 如果浏览器证书错误,一般情况会提醒存在安全风险,然是依然给一个链接进入目标页,而 HSTS 则没有目标页入口,所以一旦证书配置错误,就是很大的故障了
  4. 如果服务器的 HTTPS 没有配置好就开启了 STS 的响应头,并且还设置了很长的过期时间,那么在你服务器 HTTPS 配置好之前,用户都是没办法连接到你的服务器的,除非 max-age 过期了。
  5. HSTS 能让你的网站在 ssllab 上到 A+

写在最后:HSTS 在全站 HTTPS 下有一个较大的正向作用,推荐使用。

相关新闻推荐

低成本合肥网站建设落地流程,快速上线全套资料清单

很多合肥中小商家、初创公司想做官网,最大的顾虑无非两点:一是怕花钱多、性价比低,二是怕流程复杂、耗时太久,折腾一两个月还没法正常上线。其实对于普通企业展示、产品宣传、基础获客类网站,根本不用搞复杂的定制开发,掌握一套低成本落地流程,备好全套资料,一周内就能完成从筹备到正式上线的全过程。我深耕合肥网站建设行业多年,专门整理了一套适配本地小微企业的轻量化落地方案,全程无冗余步骤、无隐形消费,新手也能直...

2026-07-27

做一个营销型网站建设需要准备什么资料?

有些打算做线上推广的企业,前期咨询网站建设时,都不清楚要提前备好哪些材料,临到开工才到处找素材,直接拖慢整个网站制作周期,还容易反复修改耽误上线进度。营销型网站和普通展示站不一样,核心目的是引流获客,前期资料准备得越齐全,网站开发出来的转化效果也会更好,今天就梳理下搭建这类站点要提前整理好的全部内容。首先是企业基础资质类材料,这是网站上线备案必不可少的。营业执照清晰照片、法人身份证正反面,要是公司...

2026-07-21

短期快速上线项目,合肥网站制作最简内容清单整理

针对企业短期加急、快速上线的合肥网站制作项目,核心原则是:砍掉非必要功能、保留搜索引擎收录与客户转化必备内容、页面结构极简、资料零冗余。避免因内容繁杂、资料迟迟不齐导致工期延期,同时保证网站合规可上线、可收录、可转化,适配初创企业、项目加急、临时品牌展示、业务引流等快速建站场景。以下为可直接对接梦扬科技建站团队的最简标准化内容清单,无需额外补充冗余素材。一、网站基础必备资料(上线硬性要求,缺一不可...

2026-07-21

制造业官网网站开发:产品展示系统独立后台搭建

不少工厂老板在做线上宣传时,踩过不少坑,随便做个普通企业站,产品更新还要每次找建站公司修改,一来一回耽误好几天,客户想看新款设备根本看不到。做制造业官网网站开发,产品展示系统一定要搭配独立后台,自己就能随时操作,不用事事依赖技术人员,对生产型企业来说实用性很高。普通展示网站的产品板块大多是固定页面,后台权限有限,增删设备、更换参数、上传实拍图都操作不了。而专门为工厂定制的独立产品后台,权限完全掌握...

2026-07-17

网站制作忽略移动端适配,会流失大半手机端客户吗?

现在大家不管是找服务、查商家还是咨询合作,基本都是拿着手机操作,真正坐在电脑前浏览网站的人少之又少,做网站制作时要是完全不管移动端适配,流失大半手机客户真的不是危言耸听。先说说最直观的用户体验问题。没有适配手机的网站,在手机上打开只会把电脑页面直接缩小,文字挤成一团,字体小到看不清,想放大页面,侧边栏、弹窗又会到处乱跑,点个咨询按钮、联系方式都很难精准触达。很多人打开网页三秒内看不到有效信息,手指...

2026-07-17

初创公司预算有限,网站建设选模板还是全定制?

不少刚起步的初创企业在规划线上门面时都会陷入纠结:手里可支配推广、建站预算不多,想拥有能承接客户、展示业务的官网,却不知道该选模板网站,还是直接做全定制网站。很多人第一反应是模板建站省钱省事,可综合长期运营、转化效果来看,即便预算紧张,初创公司优先选择全定制网站建设,才是更划算、更适配长期发展的选择。先说说模板网站的底层短板,这也是它看似低价,实则暗藏隐性成本的核心原因。模板网站是批量预制的标准化...

2026-07-14

准备好开始您的项目了吗?

立即联系我们,获取专业的网站建设方案,让您的品牌在数字世界中脱颖而出