by Devin Yang

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

本文介绍如何调整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特定服务重启

一般情况下,我们使用./console restart重建并且运行contaiener。 有时,我们有多个服务,并不想要一次重启所有的服务, 这时,可以使用./console restart [servce name]来重启特定服务..

dlaravel

D-Laravel 释出 v1.1.5

因应Laravel 5.5推出了,刚好php也出了php 7.0.23及php 7.1.9版了。 D-Laravel使用的fpm版本也进行更新罗...只要调整您的docker-compose所定义的版本 即可使用最新的php罗...

dlaravel

D-Laravel的sublime外挂以可由Package Control安装罗。

Mac或Linux的使用者,现在可由Sublime3的package control进行D-Laravel alias的包安装罗。 透过D-Laravel alias,我们可以使用更轻松的方式,运行容器内的artisan及composer命令。 docker的环境,要用composer安装包吗,不需再进入container内,或是设置composer的ce别名,即可在sublime中直接运行。