在服务器上配置好 web服务器,当然 nginx 或者 apache2都行,因为没有开放80端口,所以:

然后呢根据自己的域名在终端上如下操作

1、在终端运行命令:

sudo certbot certonly --preferred-challenges dns --manual  -d  v.sinoll.com



这个过程中,会提示让你创建 txt 的dns记录,根据提示去我注册域名的服务商网站上打开dns面板,创建一条txt记录。

一般的 是这样的 txt记录:_acme_challenge.域名  指向一串随机字符,这个字符来自于终端的提示
例子:
_acme_challenge.v.sinoll.com

qYAVDuNC5ecqRB98OFJexpTRDWGvznyXig0Yvei4ebY

我们在域名管理的服务器上设置好后要等足够的时间,大约2分钟 然后在终端按enter继续执行

证书会下载并保存到

/etc/letsencrypt/live/v.sinoll.com/fullchain.pem

/etc/letsencrypt/live/v.sinoll.com/privkey.pem

2.如果有80端口 http能直接访问

那就先安装apache的插件

#sudo apt install python-certbot-apache

安装好以后,只需要一条命令即可获取证书,不需要 设置DNS了。

# sudo certbot --apache -d v.sinoll.com

证书默认保存默认重启apache服务器并应用新的配置

如果只更新证书暂时不配置到apache2服务器则

# sudo certbot --apache certonly

然后,我们在web服务器中开启ssl 模块,并配置证书,这样就OK了。

证书的有效时间大约是 90(3个月)天后过期,到时间我们可以这样来更新(这个待后再完善)

sudo  certbot renew

最后一句可以写入 服务器 的 cron 任务中,每隔3个月执行一次。