Bind
命名不提供letsencrypt TXT記錄
我正在嘗試使用 DNS 身份驗證更新/創建letsencrypt證書:
certbot-auto -d xxx.it -d mail.xxx.it --manual --preferred-challenges dns certonly
但是,插入請求的記錄後:
Please deploy a DNS TXT record under the name _acme-challenge.mail.xxx.it with the following value: yB_EQ-wiB0NzNUVwiyfiabeIOqIXx3fWKiia1uHGesE Before continuing, verify the record is deployed.
挑戰失敗。
確實,如果我嘗試:
$ dig_acme-challenge.mail.xxx.it TXT
儘管區域文件包含記錄,但請求也失敗了:
# fgrep TXT /var/named/chroot/var/named/master/xxx.it acme-challenge.mail.xxx.it IN TXT "yB_EQ-wiB0NzNUVwiyfiabeIOqIXx3fWKiia1uHGesE"
我假設 BIND (bind-9.8.2-0.62.rc1.el6_9.4.x86_64) 以某種方式拒絕提供帶有前導下劃線的記錄,但文件/Google沒有幫助。
有任何想法嗎?
編輯如下面的答案所指出的,區域記錄中的主機部分需要有一個尾隨點或域部分被剝離。照看好你的複制和粘貼。
在您的區域文件中,您需要以 . 這告訴 bind 不要附加您在區域中列出的原點
acme-challenge.mail.xxx.it. IN TXT "yB_EQ-wiB0NzNUVwiyfiabeIOqIXx3fWKiia1uHGesE"