我正在尝试使用lighttpd和acme-tiny script为我的网站获得A +级。以下步骤如下:
- 创建一个让我们加密帐户私钥:
OpenSSL Genrsa 4096>帐户.key
- 为域(单个域)创建证书签名请求 (CSR)
OpenSSL Genrsa 4096>域.key
openssl req -new -sha256 -key domain.key -subj "/CN=mysitehere.com"> domain.csr
- 制作网站主机质询文件
mkdir/var/www/.well-known/acme-challenge/
- 获取签名证书
well-known/acme-challenge/> ./signed.crt
- 安装证书
wget -O - https://letsencrypt.org/certs/lets-encrypt-x1-cross-signed.pem> intermediate.pem
cat signed.crt intermediate.pem> chained.pem
cat domain.key chained.pem> mysitehere.pem
lighttpd-enable-mod ssl
/etc/lighttpd/conf-enabled/10-ssl.conf
$SERVER["socket"] == "0.0.0.0:443" {
ssl.engine = "enable"
ssl.pemfile = "/root/letsencrypt/mysitehere.pem"
ssl-ca-file = "/root/letsencrypt/chained.pem"
ssl.dh-file = "/root/letsencrypt/dhparams/dhparams.pem"
ssl.cipher-list = "ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA "
ssl.honor-cipher-order = "enable"}
一切似乎都很好。
在 SSLLAB 上测试此设置并获得 B 级。
证书 - 100%
协议支持 - 100%
密钥交换 - 90%
密码强度 - 90%
此服务器的证书链不完整。链问题不完整
提供的证书 1(1532 字节)
服务器发送 mysitehere.com 指纹SHA1:e0f6d98733915
......额外下载 让我们加密权威 X1 ......
在信任存储区中 DST 根 CA X3 自签名
如何制作文件mysitehere.pem,以避免从Let's Encrypt站点额外下载并从SSLLABS获得A级?
谢谢!
ssl-ca-file
应该是ssl.ca-file
。