您的位置:首页 > 运维架构 > 网站架构

使你的网站更安全吧

2020-07-21 04:08 746 查看

前言

我在myssl.com上检测我的网站是否安全时发现我的网站只能评到A
然后我花了大量的时间让他评到A+
我想把这件事情记录下来

正文

0x00 HSTS

我第一次检测发现一个叫HSTS的东西不合规
我上网查了查原来是需要配置一个东西
让客户端知道在接下来的<15552000(大约180天)秒内使用https协议访问
配置方法
Nginx

add_header Strict-Transport-Security "max-age=15553000; includeSubdomains; preload";
Apache
# Apache 需加载 mod_header 库,一般位于 httpd.conf 文件,搜索 mod_headers 并取消注释。(已加载可跳过)
LoadModule headers_module modules/mod_headers.so
#然后对应站点 VirtualHost 里面插入HSTS响应头信息
Header always set Strict-Transport-Security "max-age=15768500; includeSubdomains; preload"

0x01 ATS配置

配置好HSTS之后发现又有一个ATS需要配置直接降到了B机
ATS是苹果公司在App Store上架需要的配置
Apache在httpd.conf中最后添加

<IfModule mod_ssl.c>
<VirtualHost *:443>
SSLProtocol TLSv1 TLSv1.1 TLSv1.2
SSLCipherSuite ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4
</VirtualHost>
</IfModule>
即可

Nginx修改nginx.conf文件在里面添加

server {
        listen 443;
        server_name test.com; //你的域名
        ssl on;
        ssl_certificate https://zigao-oss.oss-accelerate.aliyuncs.com/web/blog.zigao.info/assets/local/nginx/conf/test.com.crt; //从godaddy上下载下来合并的文件
        ssl_certificate_key https://zigao-oss.oss-accelerate.aliyuncs.com/web/blog.zigao.info/assets/local/nginx/conf/test.com.key; //自己申请证书时做的key
        ssl_session_timeout 5m;
        ssl_protocols  TLSv1 TLSv1.1 TLSv1.2; //安全协议,iOS ATS只支持TLSv1.2即以上
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
        ssl_prefer_server_ciphers on;
        location / {
                proxy_pass http://test.com; //这里是我要代理的apache的域名
                client_max_body_size 35m;
        }
    }
就可以了

后记

最后重启一下Nginx或者是Apache
不使用TLS1.0就可以符合PCI DSS标准
在myssl.com中检测就是A+啦

文中大部分内容来自网络我只是整合如果需要联系删除
还有什么留言吧

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: