建立于: 7年前 ( 更新: 7年前 )
本文介绍如何调整nginx的ssl设置,让网站取得SSL报告,取得A+的评比。
这里我使用的为 letsencrypt 免费证书。
只要您使用D-Laravel默认的Docker官方nginx新版image,
应该都可以达到跟我一样的效果。
下方为SSL检测网址,可用来检测您主机上的SSL设置:
https://www.ssllabs.com/ssltest/index.html
有图有真相,先来看看我的结果吧..:),在Nginx上设置非常简单哦。
以下是我使用在D-Laravel中的ssl完整设置档,您可以下载参考及自行调整:
完整设置档: ccc-ssl.conf
主要包含了如下的设置:
例如:(4096会花很长的一段时间,您可以使用2048或是我使用512。)
您可以在终端机使用 openssl 命令,生成该文件
这里我使用的为 letsencrypt 免费证书。
只要您使用D-Laravel默认的Docker官方nginx新版image,
应该都可以达到跟我一样的效果。
下方为SSL检测网址,可用来检测您主机上的SSL设置:
https://www.ssllabs.com/ssltest/index.html
有图有真相,先来看看我的结果吧..:),在Nginx上设置非常简单哦。
以下是我使用在D-Laravel中的ssl完整设置档,您可以下载参考及自行调整:
完整设置档: ccc-ssl.conf
主要包含了如下的设置:
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
ssl_certificate /etc/nginx/conf.d/ssl/fullchain.pem;
ssl_certificate_key /etc/nginx/conf.d/ssl/privkey.pem;
ssl_ciphers EECDH+ECDSA+AESGCM:EECDH+aRSA+AESGCM:EECDH+ECDSA+SHA384:EECDH+ECDSA+SHA256:EECDH+aRSA+SHA384:EECDH+aRSA+SHA256:EECDH:EDH+aRSA:HIGH:!aNULL:!eNULL:!LOW:!RC4:!3DES:!MD5:!EXP:!PSK:!SRP:!SEED:!DSS:!CAMELLIA;
ssl_prefer_server_ciphers on;
ssl_session_cache shared:SSL:10m;
ssl_dhparam /etc/nginx/conf.d/ssl/dhp-512.pem;
ssl_stapling on;
ssl_stapling_verify on;
ssl_trusted_certificate /etc/nginx/conf.d/ssl/chain.pem;
此外,我生成一组512位的 diffie-hellman (迪菲-赫尔曼密钥交换)参数,以提高某些类型的密码的安全性。例如:(4096会花很长的一段时间,您可以使用2048或是我使用512。)
您可以在终端机使用 openssl 命令,生成该文件
openssl dhparam -out dhp-2048.pem 2048
No Comment
Post your comment