Hiiragiの咖啡厅 Hiiragiの咖啡厅

[2019.06.10] Certbot 通过DNS记录获取证书

in 教程read (107) 文章转载请注明来源!

73415224_p0.png

封面配图PID 73415224




》高考考完啦!撒花《

[Let's Encrypt]乃当下一良心证书颁发机构,其提供的免费证书几乎可永久续期,我 吹 爆 !

通常,我们使用certbot程序获取证书。certbot在验证域名是否属于你的时候,会调用letsencrypt的服务器访问你的网站(通常是80端口)。但有时候,你的服务器可能是NAT VPS,或者你需要在某台内网的主机上撸一张证书,这时候letsencrypt会提示不能访问你的服务器(Connection refused/timeout),然后报错退出。

当然[Let's Encrypt]也考虑到了这种情况,于是呢,cerbot提供了一个选项→ --preferred-challenges dns

打开终端,输入命令:sudo certbot --manual --preferred-challenges dns certonly 回车

Capture.PNG

输入域名并回车后,会有是否允许记录IP的提示

Capture2.PNG

敲Y,允许记录。这时候certbot会给出要求添加的DNS记录。如下图↓

4209607946.png

进入你的域名解析控制面板,并添加相应的TXT记录(这里以Cloudflare为例)

Capture.PNG

添加后可以使用nslookup测试添加的记录是否生效↓

nslookup -q=TXT _acme-challenge.二级域名 1.1.1.1

Capture.PNG

↑像这样子就是可以了的意思
我们回到certbot中,按回车继续~
不出意外的话就成功了。证书会放置在/etc/letsencrypt/archive/域名

**注意!certbot给出的路径中存放的是连接(Linux symbolic),不能直接复制的!
真正的证书在/etc/letsencrypt/archive/域名中**

Capture.PNG

你可以把证书和key导出来,放到你想用的地方。
最后呢,Enjoy it!

PS:三个月后如果需要续签,可以直接运行certbot renew。同样的,certbot会将新证书放在老地方

发表新评论
博客已萌萌哒运行
© 2019 由 Typecho 强力驱动.Theme by Yodu
前篇 后篇