Я использую 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 } }
КакВы можете видеть, что это даже не мои первые два домена, которые заканчиваются в моих альтернативных именах, а скорее те, которые уже были в старом сертификате (не уверен, что именно поэтому).
Я не женат на 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