5 Star 38 Fork 10

khs1994-docker / lnmp

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
issue-ssl.md 2.41 KB
一键复制 编辑 原始数据 按行查看 历史
khs1994 提交于 2021-06-17 16:59 . Update lwpm

申请 SSL 证书

第一种方法是自行到国内云服务商等处申请 SSL 证书。

你也可以使用以下命令申请(由 acme.sh 提供技术支持,感谢 Let's Encrypt)。

通配符证书

Let's Encrypt 现已支持通过 DNS 验证来申请通配符证书,本例以通配符证书为例。

确定域名的 DNS 服务商

https://github.com/acmesh-official/acme.sh/tree/master/dnsapi 找到自己域名的 DNS 服务商代码,例如

  • dnspod.cn 代码为 dns_dp

  • GoDaddy.com 代码为 dns_gd

...

修改 .env 文件

根据 DNS 服务商,自行在 .env 文件设置相关变量

  • dnspod.cn

    # [DNSPOD]
    DNS_TYPE=dns_dp
    
    DP_Id=
    DP_Key=
  • GoDaddy.com

    # DNS 服务商
    DNS_TYPE=dns_gd
    
    GD_Key=sdf...
    GD_Secret=sdf...

...

申请网站证书

除了 acme.sh 原始参数外,支持以下参数

  • --httpd

  • --rsa

# 首次使用必须执行此命令
$ ./lnmp-docker acme.sh --register-account -m my@example.com(替换为自己的邮箱)
$ ./lnmp-docker ssl example.com -d *.example.com -d t.example.com -d *.t.example.com [--debug]

特别提示,*.example.com 的证书不支持 example.com 所以一个主域要写两次

特别提示,第一个网址不用加 -d 参数,后面的需要加 -d 参数

若你的网站服务器不是 NGINX 而是 HTTPD,那么请加上 --httpd 参数,即

$ ./lnmp-docker ssl example.com -d *.example.com --httpd

默认申请 ECC 证书,你可以加上 --rsa 来申请 RSA 证书,即

$ ./lnmp-docker ssl example.com -d *.example.com --rsa

生成证书的位置

./config/nginx/ssl/*

其他

签发自签名证书

$ ./lnmp-docker ssl-self khs1994.com *.khs1994.com 127.0.0.1 localhost

生成的 ssl 文件位于 ./config/nginx/ssl-self

务必在浏览器导入根证书(./config/nginx/ssl-self/root-ca.crt)。

https://*.t.khs1994.com 均指向 127.0.0.1 你可以使用这个网址测试 https

示例配置

请查看 ./config/nginx/demo-*.conf

第三方工具

HTTP3

More Information

Docker
1
https://gitee.com/khs1994-docker/lnmp.git
git@gitee.com:khs1994-docker/lnmp.git
khs1994-docker
lnmp
lnmp
master

搜索帮助