编程是一门艺术

raptor.zh(at)gmail.com Creative Commons License
本作品采用知识共享署名-非商业性使用-相同方式共享 2.5 中国大陆许可协议进行许可。

archives 存档

01 Jan - 31 Dec 2018
01 Jan - 31 Dec 2017
01 Jan - 31 Dec 2016
01 Jan - 31 Dec 2015
01 Jan - 31 Dec 2014
01 Jan - 31 Dec 2013
01 Jan - 31 Dec 2012
01 Jan - 31 Dec 2011
01 Jan - 31 Dec 2010
01 Jan - 31 Dec 2009
01 Jan - 31 Dec 2008
01 Jan - 31 Dec 2007
01 Jan - 31 Dec 2006
01 Jan - 31 Dec 2005
01 Jan - 31 Dec 2004
01 Jan - 31 Dec 2003
01 Jan - 31 Dec 2002
01 Jan - 31 Dec 2001
01 Jan - 31 Dec 2000
01 Jan - 31 Dec 1999

--

links 链接

--

Let's Encrypt的泛域名证书

原先Let's Encrypt只支持单域名证书,虽然可以多个域名共用一个证书,但如果子域名多并且分布于不同的服务器上,配置起来还是很麻烦的。还好从certbot 0.22开始(我现在用的是0.26.1,通过pip安装的版本通常会比apt之类装的版本更新一些),Let's encrypt终于开始支持泛域名证书。这东西好是好,但是只能用DNS验证,如果域名注册商没有提供API,或者没有相应的插件,那么就无法自动renew了,每三个月需要自己手工更新一次,比较麻烦。

操作方法如下:

certbot certonly --manual --email <your_email> -d your_domain.com -d "*.your_domain.com" --preferred-challenges dns --agree-tos --server https://acme-v02.api.letsencrypt.org/directory --manual-public-ip-logging-ok

上面加了很多参数,免去了很多不必要的提示,但必要的提示操作还是必不可少的。

所以上面的命令运行之后会提示你,需要在_acme-challenge.your_domain.com这个子域名的txt记录里配置上一个特定的字符串,用于验证域名所有权。

配置好后按回车,验证通过之后会出来另外一个字符串,再次配置到上面那个txt记录里,再次回车等待验证。

验证通过后即可获得证书,保存在:/etc/letsencrypt/live/your_domain.com/下面(实际上是几个Symbol link,连到archive下面)。

如果验证失败,可能是DNS更新没有那么快,可以在两次验证的回车之前先用nslookup检查一下是否生效,确定生效再回车。

nslookup
>set type=txt
>_acme-challenge.your_domain.com

注意,如果反复失败请检查错误信息,盲目重试会导致超过重试限制而无法注册。

另外,因为无法自动renew,必须每三个月重复以上步骤更新证书。

推送到[go4pro.org]

Trackback link:

Please enable javascript to generate a trackback url

No trackbacks

评论(0)


 
   
 
  表情图标 

 


提示: 除了 <b> 和 <i> 之外,其他的Html标签都将从您的评论中去除.url或mail地址会被自动加上链接.