• 经过指定由受信任的证书颁发机构(CA)颁发的有效证书,将服务器配置为侦听端口上的HTTPS流量。html
• 经过配置nginx.conf文件来增强安全性。示例包括选择更强大的密码,并将全部流量经过HTTP重定向到HTTPS。nginx
• 添加
HTTP Strict-Transport-Security
(HSTS)头部确保客户端所作的全部后续请求仅经过HTTPS。浏览器
nginx配置ssl,须要确保nginx包含相应的模块--with-http_ssl_module安全
查看nginx安装参数是否已经包含此模块,若是未包含请先安装此模块服务器
nginx -V
添加/etc/nginx/proxy.conf配置文件:session
vi etc/nginx/proxy.conf
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
client_max_body_size 10m;
client_body_buffer_size 128k;
proxy_connect_timeout 90;
proxy_send_timeout 90;
proxy_read_timeout 90;
proxy_buffers 32 4k;
编辑/etc/nginx/nginx.conf配置文件。配置主要包含两个部分http
和server
。(若是有同窗是配置在conf.d下的default.conf,能够将其备份或删除)mvc
vi /etc/nginx/nginx.conf
http {
include /etc/nginx/proxy.conf;
limit_req_zone $binary_remote_addr zone=one:10m rate=5r/s;
server_tokens off;
sendfile on;
keepalive_timeout 29; # Adjust to the lowest possible value that makes sense for your use case.
client_body_timeout 10; client_header_timeout 10; send_timeout 10;
upstream hellomvc{
server localhost:5000;
}
server {
listen *:80;
add_header Strict-Transport-Security max-age=15768000;
return 301 https://$host$request_uri;
}
server {
listen *:443 ssl;
server_name example.com;
ssl_certificate /etc/ssl/certs/testCert.crt;
ssl_certificate_key /etc/ssl/certs/testCert.key;
ssl_protocols TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH";
ssl_ecdh_curve secp384r1;
ssl_session_cache shared:SSL:10m;
ssl_session_tickets off;
ssl_stapling on; #ensure your cert is capable
ssl_stapling_verify on; #ensure your cert is capable
add_header Strict-Transport-Security "max-age=63072000; includeSubdomains; preload";
add_header X-Frame-Options DENY;
add_header X-Content-Type-Options nosniff;
#Redirects all traffic
location / {
proxy_pass http://hellomvc;
limit_req zone=one burst=10;
}
}
}
• server_name改为你的域名=申请证书绑定的域名dom
• ssl_certificate改为你的公钥路径网站
• ssl_certificate_key改为你的私钥路径spa
编辑nginx.conf文件:
vi /etc/nginx/nginx.conf
将配置中的
add_header X-Frame-Options DENY;
更改成
add_header X-Frame-Options SAMEORIGIN;
从新加载nginx
service nginx reload
nosniff
选项编辑nginx.conf文件:
vi /etc/nginx/nginx.conf
添加行
add_header X-Content-Type-Options nosniff;
上文的nginx.conf已配置好此标头,保存文件,从新启动Nginx