我正在使用greenlock生成证书,我将其传递给三个域,但在我的替代名称中仅获得2个:
const greenlock = Greenlock.create({
agreeTos: true,
email: myemail,
communityMember: false,
version: 'draft-12',
server: 'https://acme-v02.api.letsencrypt.org/directory',
configDir: '/etc/letsencrypt',
debug: true,
log: (debug) => { console.log(debug) },
})
console.log({ domains })
return greenlock.register({
domains,
email: myemail,
challengeType: 'dns-01',
})
.then((result) => {
console.log(result)
})
这是我的日志:
{ domains:
[ 'domain1',
'domain3',
'domain2' ] }
true
true
true
{ result:
{
privkey: '-----BEGIN PRIVATE KEY-----\n\n-----END CERTIFICATE-----\n',
chain: '-----BEGIN CERTIFICATE-----\n-----END CERTIFICATE-----\n',
subject: 'domain2',
altnames: [ 'domain1', 'domain2' ],
_issuedAt: 2018-09-19T14:43:31.000Z,
_expiresAt: 2018-12-18T14:43:31.000Z,
issuedAt: 1537368211000,
expiresAt: 1545144211000 } }
您可以看到,以我的altname结尾的不是我的前两个域名,而是旧证书中已经存在的域名(不确定这是为什么)。
如果有人作为更好的选择,我也正在听格林洛克的婚姻。
我尝试将approveDomains传递给我的greenlock构造函数,它似乎变化不大。 我的证书中仍然没有列出我的新域(domain2):
openssl x509 -text < /etc/letsencrypt/live/domain1/fullchain.pem | grep 'DNS:' | sed 's/\s*DNS:\([a-z0-9.\-]*\)[,\s]\?/\1 /g'
domain1 domain3
答案 0 :(得分:1)
与证书生成,域名和altname关联有关的所有代码均已更新。
现在,当您将domains数组更改为包括更多域时,它将单独而不是作为一个整体来处理它们。
此外,直接从证书中读取有关证书的信息,因此“缓存”和“真相”之间不会出现不匹配。
如果您遇到其他问题,请直接让我们知道: