如何在 Apache 中启用 HSTS 以增强网络安全性 ?

HTTP Strict Transport Security (HSTS)严格传输安全是一种安全特性,帮助保护网站免受某些攻击。它确保了网络浏览器总是使用安全的 HTTPS 连接到您的网站,而不是不安全的 HTTP 协议。本指南将向您展示如何设置和改进 Apache 中的 HSTS 以获得更好的安全性。

为什么使用 HSTS?

在我们讨论如何设置 HSTS 之前,让我们先谈谈为什么 HSTS 很重要。

Stop man-in-the-middle attacks

HSTS 确保连接到您的网站始终是安全的,防止攻击者 从 HTTPS 降级到 HTTP 连接并且监视你的用户。

Stop cookie hijacking

通过强制使用 HTTPS, HSTS 可以保护用户的 cookie 免受攻击者的窃取攻击。

Meet browser requirements

一些现代浏览器要求网站使用 HTTPS,并可能显示安全警告。HSTS 可以帮助满足这些要求,并为用户提供更好的浏览体验。

在 Apache 中配置 HSTS

Access your Apache configuration file

根据您的系统,该文件可以命名为 httpd.confapache2.confssl.conf 。通常,您可以在 /etc/apache2/etc/httpd 目录中找到它。

Enable the headers module

HSTS 是作为 HTTP 报头发送的,所以您需要确保 headers 模块是启用的。在基于 debian 的系统,你可以通以下命令来启用它:

复制代码
sudo a2enmod headers 
service apache2 restart

Add the HSTS header

打开配置文件,找到站点部分,并在 "<VirtualHost *:443>"块中添加这一行:

apacheconf 复制代码
<VirtualHost *:443>
    # ...
    # ....
    Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains"
    # ....
</VirtualHost>

这一行告诉浏览器在下一年(31536000 秒 = 1 年)为您的站点使用 HTTPS,包括所有子域。

Restart Apache

保存更改,然后重新启动 Apache 以应用更改。

复制代码
service apache2 restart

在 Apache 中优化 HSTS

虽然在您的服务器上启用了 HSTS,但您可以采取其他步骤使其更好。

Use a long max-age

此参数告诉浏览器要记住使用 HTTPS 的时间。更长的最长使用时间(例如,1 年)提供了更好的安全性,但如果您停止使用 HTTPS,浏览器仍然会尝试通过 HTTPS 访问您的站点,直到 max-age 过期。

Include subdomains

该参数告诉浏览器对站点的所有子域使用 HTTPS。在启用此选项之前,请确保所有子域都支持 HTTPS

避免连接问题。

Preload HSTS

即使在第一次访问您的站点时,也强制执行 HSTS。要预加载 HSTS,请在 HSTS 配置中添加 preload 指令。

apacheconf 复制代码
Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"

设置完成后,您可以将您的站点提交到 HSTS 预加载列表 https://hstspreload.org/ ,从预加载列表中删除可能需要几个月的时间,所以要确保这一步。

Renew your SSL certificate promptly

HSTS 需要有效的 SSL 证书。如果您的证书过期且未更新,浏览器可能会显示安全警告或阻止用户访问访问您的网站。

Test your implementation

设置 HSTS 之后,使用 Qualys SSL 服务器测试之类的工具来检查它是否正常工作。此工具提供对服务器 SSL 设置的详细分析,可以发现潜在的问题。

我的开源项目

相关推荐
MAXrxc21 小时前
BGP策略
运维·网络
网络系统管理21 小时前
第八届江苏技能状元大赛选拔赛信息通信网络运行管理项目模块D网络服务与系统运维-Linux样题解析
linux·运维·网络
德迅云安全-小潘21 小时前
网站遭遇SQL注入攻击?应急处置、漏洞修复与长效防御完整方案
网络·sql·oracle
电子元件小说家1 天前
Coilcraft S5499-DL 国产替代选型分析:同于科技 Tonevee 同参数产品评估指南
网络·科技
VidDown1 天前
VidDown 工具站:视频分辨率技术
javascript·网络·编辑器·音视频·视频编解码·视频
长和信泰光伏储能1 天前
探索绿色能源:离网光伏系统安装指南
网络
极客先躯1 天前
高级java每日一道面试题-2026年02月09日-实战篇[Docker]-Docker 容器有哪些安全风险?如何缓解?
java·运维·网络·安全·docker·容器
七夜zippoe1 天前
DolphinDB OPC-UA协议接入:工业标准通信
网络·通信·dolphindb·工业标准·opc-ua
yxl874646461 天前
磐创PCTG-9013 Modbus转ProfibusDP工业协议转换器
网络·科技·物联网·gateway·信息与通信
蚂蚁数据AntData1 天前
从ChatBI到业务记忆:重新定义数据智能的生产力边界
大数据·网络·数据库·人工智能·算法