1.准备所需文件
安装SSL证书到nginx服务器上, 需要两个文件:
证书文件 server.crt :请登录控制台
,后下载证书,把下载的压缩包解压,进入nginx这个文件夹,里面有server.crt 这个证书文件,这个文件里面包含有服务器证书和中级证书。
私钥 server.key :这是你提交订单前生成CSR的时候生成的,如果你在提交订单时候选择系统生成CSR的,请检查邮箱,有一封邮件主题是 "订单编号xxxx的CSR和私钥"的邮件,下载server.key 这个附件,这个文件就是私钥。
2.配置Ngnix
生成更强的DHE参数 ,这里将生成一个文件,文件位于 /etc/nginx/ssl/dhparam.pem
,在最下面的nginx配置中,我们将使用这个文件
cd /etc/nginx/ssl
openssl dhparam -out dhparam.pem 4096
找到Nginx安装目录下的conf目录,打开 nginx.conf
在任何一个
server{
........
}
的下方添加以下代码,注意将其中的证书和私钥文件内容改成你自己的。
# 重定向 http 到 https
server {
listen 80;
location / {
return 301 https://$host$request_uri;
}
}
server {
listen 443 ssl http2;
server_name www.sslaaa.com sslaaa.com ;
index index.php;
root /home/wwwroot/sslaaa.com;
ssl_certificate /etc/nginx/ssl/server-bundle.crt; #证书文件路径
ssl_certificate_key /etc/nginx/ssl/server.key; #私钥文件路径
ssl_session_timeout 1d;
ssl_session_cache shared:MozSSL:10m; # about 40000 sessions
ssl_session_tickets off;
ssl_dhparam /etc/nginx/ssl/dhparam.pem;
# intermediate configuration
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384;
ssl_prefer_server_ciphers off;
#### 下面这部分不是必须的,可以选择是否使用 #####
# HSTS:作用是 让浏览器强制跳转到 https (需要用到nginx 模块 :ngx_http_headers_module ) (63072000秒)
add_header Strict-Transport-Security "max-age=63072000" always;
# OCSP stapling ,有些浏览器会访问CA网站验证证书的有效性,使用 OCSP stapling 可以让这个验证在服务器端完成,提高访客端的访问速度
ssl_stapling on;
ssl_stapling_verify on;
}
然后保存。运行
nginx -s reload
重载入 nginx
配置文件,让配置生效