by Devin Yang

建立于: 8年前 ( 更新: 8年前 )

本文介绍如何调整nginx的ssl设置,让网站取得SSL报告,取得A+的评比。
这里我使用的为 letsencrypt 免费证书。
只要您使用D-Laravel默认的Docker官方nginx新版image,
应该都可以达到跟我一样的效果。

下方为SSL检测网址,可用来检测您主机上的SSL设置:
https://www.ssllabs.com/ssltest/index.html

有图有真相,先来看看我的结果吧..:),在Nginx上设置非常简单哦。
ssl a plus rating

以下是我使用在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

 

Tags: nginx dlaravel

Devin Yang

文章内容无法一一说明,如果您有什么不了解处,欢印提问哦:)

No Comment

Post your comment

需要登入才可留言!

类似文章


dlaravel

使用D-Laravel build自己专用的php fpm image。

D-Laravel已提供了Build好的php image,如果需要自己调整及Build自己专用的Image相当简单。 一、首先在D-Laravel的录中,进入dockerfiles/fpm,选择您要Build的PHP版本,例如7.2。 命令如下...

dlaravel

D-Laravel测试域名*.dev变更为*.test

由於Google Chrome 63会强制转换*.dev的域名为https了,D-Laravel新版的域名变更为*.test。 本文说明更新的方式。

dlaravel

如何启动D-Laravel上的supervisor

由於queue workers是一个长期运行的进程,所以我们会需要一个进程管理员supervisor来监控Linux系统上的process是否持续运作,例如:当queue:work运作失败时,可以自动重启queue:work process。很幸运的D-Laravel已内建supervisor罗,所以不需要再自行安装即可使用。 本文简单的介绍,我们如何来启动container内的supervisor。