Apache配置HSTS安全策略

如果客户机使用的是集成式环境如:WAMP、PHPStudy、Lamp、Apache都可以参考本向导进行配置。

一、查找配置文件

在开启配置之前,需要找到 Apahce 的主配置文件 httpd.conf。

二、开启mod_headers.so模块

  1. 请使用notpad++编辑器(不要使用Windows记事本)打开查找到 httpd.conf 配置文件。
  2. 在编辑器内按下查找快捷键Control+F唤出内容查找器,输入 mod_headers.so 并点击查找。
  3. 去除下面这行之前的#号,并保存配置文件。
LoadModule headers_module modules/mod_mod_headers.so

三、查找已经开启SSL的站点配置文件

  1. 在客户机上查找站点配置文件,站点配置文件通常位于 httpd.conf、vhost-ssl.conf、vhost.conf或者自定义的配置文件内。
  2. 为了方便理解,这里我们假设找到的SSL站点配置文件为mydomain-ssl.conf

四、开启站点HSTS

插入HSTS代码

Header always set Strict-Transport-Security "max-age=63072000; includeSubdomains; preload"

编辑配置mydomain-ssl.conf内容如下

<VirtualHost *:443>
DocumentRoot "\www\mydomain"
ServerName mydomain.com:443
ServerAlias www.mydomain.com
ErrorLog "logs/error_log"
TransferLog "logs/access_log"
 
SSLEngine on
SSLCertificateFile "/conf/ssl/mydomain.pem"
SSLCertificateKeyFile "/conf/ssl/mydomain.key"
SSLCertificateChainFile "/conf/ssl/ca-chain.pem"
Header always set Strict-Transport-Security "max-age=63072000; includeSubdomains; preload"
</VirtualHost>

 保存您正在编辑的配置文件

这里需要注意的是配置完HSTS命令后,务必修改其它文件。

五、重启和测试

重新启动您的Apache,清除浏览器缓存,访问2次查看效果。
您也可以通过chrome浏览器的开发者选项→网络项查看服务器返回的头信息,来判断是否已经开启HSTS

根据您对HSTS的配置,所查看到的 Strict-Transport-Security 配置值可能不一样。

恭喜您!您的网站已经开启HSTS安全策略。
如遇其它问题 欢迎反馈。

Tagged

Related Posts