老刘笔记老刘笔记

欢迎光临
我们一直在努力!

certbot申请泛域名证书Let's Encrypt免费证书

Let's Encrypt

是一个由非营利性组织互联网安全研究小组(ISRG)提供的免费、自动化和开放的证书颁发机构(CA)。
是国外一个公共的免费SSL项目,由 Linux 基金会托管,
它的来头不小,由 Mozilla、思科、Akamai、IdenTrust 和 EFF 等组织发起,
目的就是向网站自动签发和管理免费证书,以便加速互联网由 HTTP 过渡到 HTTPS,
目前 Facebook 等大公司开始加入赞助行列。
Certbot 为 Let's Encrypt 项目发布了一个官方的客户端 Certbot ,
利用它可以完全自动化的获取、部署和更新安全证书,并且 Certbot 是支持所有 Unix 内核的操作系统。

什么是泛域名证书?

例如:*.xxx.cn 也就是这个证书可以给某个域名的所有二级域名使用,就叫做泛域名证书(也称作通配符证书)。
Let's Encrypt 官方推荐我们使用certbot 脚本申请证书(当然也可以使用acme.sh等方式),
以下是申请步骤基于Debian10 python3.7.3如果你在操作过程中遇到什么报错,请多考虑python工具包的版本问题之类的。
Let's Encrypt自2018年开始支持申请泛域名证书,相比于单域名证书,泛域名证书更利于日常的维护。
Let's Encrypt泛域名证书

certbot官方
https://certbot.eff.org/
在centos7以上系统安装好ertbot服务后,直接上代码:

certbot certonly --preferred-challenges dns --manual -d *.baidu.com 
--server https://acme-v02.api.letsencrypt.org/directory --register-unsafely-without-email

certbot命令参数含义:
--manual:手动模式获取/安装证书。
--agree-tos:同意使用Let's Encrypt服务条款
--server:用于指定证书签发机构的ACME协议服务器的URL
--register-unsafely-without-email:用于在不提供电子邮件地址的情况下向 Let's Encrypt 注册新的账户
--preferred-challenges:用于指定ACME挑战的优先级顺序。
ACME挑战是获取SSL证书的过程中必须通过的验证过程,其中包括HTTP-01,DNS-01和TLS-ALPN-01三种类型的挑战。
通过--preferred-challenges选项,可以告诉certbot命令要按照哪种挑战的优先级顺序来验证您的域名。
默认情况下,certbot将首选HTTP-01挑战,因为它是最常用的一种验证方式。
但是,如果服务器无法接收来自ACME服务器的传入连接,
则可以通过--preferred-challenges dns选项将优先级更改为DNS-01挑战。

执行上面命令后,结果如下:
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator manual, Installer None
Obtaining a new certificate
Performing the following challenges:
dns-01 challenge for xx.cn
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NOTE: The IP of this machine will be publicly logged as having requested this
certificate. If you're running certbot in manual mode on a machine that is not
your server, please ensure you're okay with that.
Are you OK with your IP being logged?
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: y
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please deploy a DNS TXT record under the name
_acme-challenge.xx.cn with the following value:
nI0DhzH-vn0W7STVuLi2O-oIKuFNlqQx5EnjB-zewvs
Before continuing, verify the record is deployed.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Press Enter to Continue   
#让你的二级域名_acme-challenge.xx.cn用TXT方式
#解析到nI0DhzH-vn0W7STVuLi2O-oIKuFNlqQx5EnjB-zewvs
#可以用dig -t txt _acme-challenge.xx.cn验证解析是否生效,
#然后按下Enter通过验证。
#也可以用nslookup命令来验证。
Waiting for verification...
Cleaning up challenges
IMPORTANT NOTES:
- Congratulations! Your certificate and chain have been saved at:
/etc/letsencrypt/live/xx.cn/fullchain.pem
Your key file has been saved at:
/etc/letsencrypt/live/xx.cn/privkey.pem
Your cert will expire on 2021-04-26. To obtain a new or tweaked
version of this certificate in the future, simply run certbot
again. To non-interactively renew *all* of your certificates, run
"certbot renew"
- If you like Certbot, please consider supporting our work by:
Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate
Donating to EFF: https://eff.org/donate-le

至此证书申请成功!
替换nginx 中的 ssl 配置文件
nginx -s reload

类似:
certbot申请泛域名证书
文章链接https://www.rjyl100.cn/detail/128.html
版权声明:文章由本站原创或网友分享,禁止转载!发布此文是出于传递更多信息之目的,若有来源标注错误或侵犯了您的合法权益,请与我们联系,我们将及时更正、删除,谢谢。
温馨提示本站信息来自互联网或网友分享,请大家查阅时,谨慎选择、自辩真伪,自负责任。

梦想还是要有的,万一实现了呢?老刘笔记,感谢有您陪伴!