[宝塔面板]Nginx开启HSTS获得MySSL A+评分
最近有人在问如何获得MySSL A+评分,那么今天就来讲一讲宝塔面板开启HSTS,在讲开启HSTS之前,先来简单说一下宝塔面板如何一键部署SSL
部署SSL
如果你登录了宝塔账号并且已经通实名认证,我推荐使用宝塔SSL(有钱买域名通配符的大佬无视)
网站>>设置>>SSL>>宝塔SSL>>确认域名后申请
如果你没有登录宝塔账号,我推荐申请Let's Encrypt证书
网站>>设置>>SSL>>Let's Encrypt(文件验证)>>确认域名后申请
当然dns申请支持通配符,只是相对繁琐,宝塔会自动设置续签Let's Encrypt证书的自动任务,基本无需担心到期问题,当然,你也可以部署第三方SSL。
推荐勾选开启强制https,其他不多赘述
至此,你的网站现已能够运用https访问了
开启https需要留意的问题:
运用CDN加速网站的群友要留意CDN的收费事项,https一般没有免费的CDN,腾讯的CDN貌似有免费,还有国外的cloudflare(简称CF)
站内衔接有必要全部完成https,否则会出现一些古怪的问题。谷歌浏览器干脆不提示了,给你安全衔接,非https的全部都不恳求。
设置HSTS头
参考Nginx官方文档 HTTP Strict Transport Security (HSTS) and NGINX
在站点配置文件内添加下列代码:
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
这时再次访问http就会得到307呼应,在浏览器内部就帮你切换到https了。
MySSL安全评估
可以看到,评估结果已经达到了A+
至于博主我的网站为什么没有A+,那是因为我的网站添加了密码套件等一系列不得不添加的文件,至此才会降级