Como rejeitar solicitação de certificado no Puppet Master?

Como rejeitar solicitação de certificado no Puppet Master?

Tenho algumas solicitações de agentes que tinham nomes de host incorretos. Corrigi isso, mas ainda tenho solicitações pendentes com nomes de host incorretos.

Tentei:

$puppet cert list
  "wrong.host.name" (SHA256) 8E:...:51

$ puppet cert revoke wrong.host.name
Error: Could not find a serial number for wrong.host.name

$ puppet cert clean wrong.host.name
Error: Could not find a serial number for wrong.host.name

Qual é a maneira correta de se livrar deles?

Responder1

Usandocafunciona melhor e pode remover um certificado em uma única etapa, ao contrário do cert. É importante ressaltar que isso não obriga você a assinar temporariamente um certificado inválido.

$ puppet ca destroy wrong.host.name
Notice: Removing file Puppet::SSL::CertificateRequest wrong.host.name at '/var/lib/puppet/ssl/ca/requests/wrong.host.name.pem'
Deleted for wrong.host.name: Puppet::SSL::CertificateRequest

O puppet cacomandofoi recentemente descontinuadoentão em algum momento ele pode desaparecer, mas não há comando equivalente. Existe umerroarquivado, no qual você poderia votar se achar um pouco bobo remover este comando sem substituí-lo.

Responder2

Possível solução 1:

Usar o puppet cert cleanmestre de marionetes é a maneira correta. No entanto, como você está recebendo erros, pode ter um inventário incorreto de certificados.

Tente fazer um novo inventário e depois uma limpeza:

$ puppet cert reinventory
$ puppet cert clean --all

Nota: meu exemplo usa o --allsinalizador, isso limpará todos os certificados, assinados e não assinados. Além disso, esteja ciente de que o Puppet master deve ser interrompido antes de executar um arquivo reinventory.

Fonte:http://docs.puppetlabs.com/references/3.6.2/man/cert.html

Possível solução 2:

$ puppet cert sign wrong.host.name
Notice: Signed certificate request for wrong.host.name
Notice: Removing file Puppet::SSL::CertificateRequest wrong.host.name at '/var/lib/puppet/ssl/ca/requests/wrong.host.name.pem'

$ puppet cert clean wrong.host.name
Notice: Revoked certificate with serial 87
Notice: Removing file Puppet::SSL::Certificate wrong.host.name at '/var/lib/puppet/ssl/ca/signed/wrong.host.name.pem'
Notice: Removing file Puppet::SSL::Certificate wrong.host.name at '/var/lib/puppet/ssl/certs/wrong.host.name.pem'

Possível solução 3:

Primeiro: no servidor

$ puppet cert --revoke wrong.host.name
$ puppet cert --clean wrong.host.name

Segundo: no cliente

$ rm -rf /usr/lib/puppet/ssl
$ puppet agent --server [puppetmaster domain name] --waitforcert 60

Terceiro: No servidor (ajuste conforme necessário)

$ puppet cert --list (you should see your host)
$ puppet cert --sign wrong.host.name

Além disso, verifique se o seu cliente pode acessar seu [nome de domínio do puppetmaster].

Fonte:https://serverfault.com/questions/574976/puppet-trying-to-configure-puppet-client-for-first-use-but-got-some-problems-wi

Responder3

Aqui está como eu fiz

[root@puppetmc ca]# puppet cert clean sparrow.home
Error: Could not find a serial number for sparrow.home
[root@puppetmc ca]# cat inventory.txt 
0x0002 2015-05-17T06:33:29GMT 2020-05-16T06:33:29GMT /CN=puppetmc.home
0x0003 2015-05-17T23:25:33GMT 2020-05-16T23:25:33GMT /CN=sparrow.rospop.com
0x0004 2015-05-18T00:53:18GMT 2020-05-17T00:53:18GMT /CN=puppetmc.home
0x0005 2015-05-18T02:18:12GMT 2020-05-17T02:18:12GMT /CN=sparrow.rospop.com
[root@puppetmc ca]# vi  inventory.txt 

adicionei a linha abaixo ao inventário.txt:

0x0001 2015-05-17T06:33:29GMT 2020-05-16T06:33:29GMT /CN=sparrow.home

então corra

[root@puppetmc ca]# puppet cert clean sparrow.home
Notice: Revoked certificate with serial 1
Notice: Removing file Puppet::SSL::CertificateRequest sparrow.home at '/var/lib/puppet/ssl/ca/requests/sparrow.home.pem'
Vince Bhebhe

informação relacionada