1

我正在使用 greenlock 生成证书,我将它传递给三个域,并且在我的 altnames 中只得到 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 } }

正如您所看到的,甚至不是我的前两个域最终出现在我的 altnames 中,而是那些已经在旧证书中的域(不确定这就是为什么)。

我没有嫁给greenlock,如果有人作为更好的选择我也在听。

我尝试将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
4

1 回答 1

2

使用Greenlock v2.7+

所有与证书生成以及域名和替代名称关联相关的代码都已更新。

现在,当您更改域数组以包含更多域时,它会单独处理它们而不是作为一个组处理。

而且,证书的信息是直接从证书中读取的,所以“缓存”和“真相”之间不会有不匹配的情况。

如果您遇到更多问题,请直接告诉我们:

于 2019-05-12T02:01:05.363 回答