【介绍】
2015年11月16日,Let’s Encrypt 正式对外开放。
2018年3月15日,Let’s Encrypt 发布的ACMEv2开始正式支持通配符证书。
【签发:Certbot + Cloudflare 方法】
参考:https://amon.org/certbot-cloudflare
【签发:Certbot + DNSPod 方法】
参考:https://amon.org/certbot-dnspod
【签发:certbot 方法】
安装 certbot-auto :
wget https://dl.eff.org/certbot-auto && chmod a+x certbot-auto
签发证书:
普通SSL证书:需要保护根域名 domainname.com,主域名 www.domainname.com ,或者其他二级域名 misc.domainname.com 。
./certbot-auto --server https://acme-v02.api.letsencrypt.org/directory -d domainname.com -d www.domainname.com -d misc.domainname.com --manual --preferred-challenges dns-01 certonly
通配符SSL证书:需要保护根域名 domainname.com,所有子域名 *.domainname.com 。
./certbot-auto --server https://acme-v02.api.letsencrypt.org/directory -d domainname.com -d "*.domainname.com" --manual --preferred-challenges dns-01 certonly
将安装一系列依赖包,然后设置,签发。
证书路径:
/etc/letsencrypt/live/domainname.com/fullchain.pem /etc/letsencrypt/live/domainname.com/privkey.pem
【续展:certbot-auth-dnspod 方法】
参考:https://github.com/al-one/certbot-auth-dnspod
参考:https://zhuanlan.zhihu.com/p/21501138
获得 ID/token :
网址:https://console.dnspod.cn/account/token
格式:ID,Token
安装代码到自定义位置:
wget https://raw.githubusercontent.com/al-one/certbot-auth-dnspod/master/certbot-auth-dnspod.sh && chmod +x certbot-auth-dnspod.sh
配置A(把参数写入文件):
export DNSPOD_TOKEN="your dnspod token"
配置A(把参数写入配置文件):
echo "your dnspod token" > /etc/dnspod_token
续展命令:
certbot renew --manual-auth-hook /path/to/certbot-auth-dnspod.sh
【重签】
如果需要重签某域名,请先在如下各目录删除此域名对应配置文件:
/etc/letsencrypt/archive /etc/letsencrypt/live /etc/letsencrypt/renewal
【排障】
报错:Another instance of Certbot is already running
如果配置到一半,服务器退出,这时如果再重新生成此域名,会报错:
Another instance of Certbot is already running
查看已添加到一半的域名所占用的进程号:
ps -ef | grep certb
然后通过kill进程号命令删除:
kill 1105
清除相关进程号之后,重新执行签发命令。
报错:Certbot has problem setting up the virtual environment
可能是 pip 版本太低:
pip install --upgrade pip
如果仍不奏效,可能是因为pip源没有更新。
参考:https://www.cnblogs.com/ProgramLayman/p/8528568.html
参考:https://www.v2ex.com/t/347335
mv ~/.pip/pip.conf ~/.pip/pip.conf.backup
错误消失。
或者直接修改源:
参考:http://ju.outofmemory.cn/entry/287356
参考:http://www.cnblogs.com/ityunv/p/5909434.html
mkdir ~/.pip cat > ~/.pip/pip.conf < < EOF
编辑 pip.conf :
[global] trusted-host=mirrors.aliyun.com index-url=http://mirrors.aliyun.com/pypi/simple/ EOF