Eu estou querendo saber como manualmente (usando openssl em vez de comando puppet ca) criar CA que seria utilizável pelo Puppet? O objetivo seria criar scripts de tais CAs para implantá-los em vários puppetmasters, em vez de certificados serem criados neles através do comando puppet cert.
Alguma idéia de como fazer isso? Eu só consegui encontrar algo assim: https://wiki.mozilla.org/ReleaseEngineering/PuppetAgain/HowTo/Set_up_a_standalone_puppetmaster, mas ele não funciona - após criar CA e certificado de cliente e aplicá-los ao puppetmaster, ele se queixa:
Feb 16 09:35:20 test puppet-master[81728]: Could not prepare for execution: The certificate retrieved from the master does not match the agent's private key.
Feb 16 09:35:20 test puppet-master[81728]: Certificate fingerprint: 4F:08:AE:01:B9:14:AC:A4:EA:A7:92:D7:02:E9:34:39:1C:5F:0D:93:A0:85:1C:CF:68:E4:52:B8:25:D1:11:64
Feb 16 09:35:20 test puppet-master[81728]: To fix this, remove the certificate from both the master and the agent and then start a puppet run, which will automatically regenerate a certficate.
Feb 16 09:35:20 test puppet-master[81728]: On the master:
Feb 16 09:35:20 test puppet-master[81728]: puppet cert clean test
Feb 16 09:35:20 test puppet-master[81728]: On the agent:
Feb 16 09:35:20 test puppet-master[81728]: rm -f /var/puppet/ssl/certs/test.pem
Feb 16 09:35:20 test puppet-master[81728]: puppet agent -t
ssl
puppet
certificate
openssl
Me bata
fonte
fonte
puppet cert generate
?Respostas:
O agente não está usando o certificado de cliente pré-gerado. Em vez disso, ele criou um CSR (com uma nova chave), para que o mestre não confie no agente.
Verifique se os arquivos encontrados em
são idênticos aos que você pregou e colocou no seu mestre também. (O mestre não deve receber uma cópia da chave privada do agente.)
fonte
Não sei por que você precisaria de um script que gere certs? Uma vez que o fantoche gera o certificado, deve ser bom enquanto você tiver o cliente (agente). A menos que você tenha removido o cliente e criado uma nova máquina cliente com o mesmo nome de host. Se você executar o fantoche, ele reclamará dizendo que há uma incompatibilidade de chave privada. Em vez disso, você deve limpar o certificado no servidor fantoche sempre que não precisar do cliente (por exemplo, ao reinstalar o SO ou recriar uma máquina virtual) com o
puppet cert clean test
puppetmaster.fonte
Por favor, consulte este URL. esse URL talvez ajude seu problema a resolver https://docs.puppet.com/puppet/5.0/ssl_regenerate_certificates.html
fonte