Me pregunto cómo crear manualmente (usando openssl en lugar del comando puppet ca) crear CA que Puppet pueda utilizar. El objetivo sería la creación de scripts de tales CA para implementarlos en múltiples titiriteros, en lugar de crear certificados en ellos a través del comando puppet cert.
¿Alguna idea de cómo hacerlo? Solo pude encontrar algo así: https://wiki.mozilla.org/ReleaseEngineering/PuppetAgain/HowTo/Set_up_a_standalone_puppetmaster pero no funciona, después de crear CA y certificado de cliente y aplicarlos a puppetmaster, se queja con:
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
Pegarme
fuente
fuente
puppet cert generate
?Respuestas:
El agente no está utilizando el certificado de cliente pregenerado. En su lugar, creó una CSR (con una nueva clave), por lo que el maestro no confiará en el agente.
Asegúrese de que los archivos encontrados en
son idénticos a los que pregeneraste y también pusiste en tu maestro. (El maestro no debe recibir una copia de la clave privada del agente).
fuente
No sé por qué necesitarías un script que genere certificados. Una vez que Puppet genera el certificado que debería ser bueno mientras tenga el cliente (agente). A menos que elimine el cliente y cree una nueva máquina cliente con el mismo nombre de host. Si ejecuta Puppet, se quejará diciendo que hay una discrepancia de clave privada. En su lugar, debe limpiar el certificado en el servidor de Puppet cuando no necesite el cliente (por ejemplo, si está reinstalando el sistema operativo o recreando una máquina virtual) con
puppet cert clean test
puppetmaster.fuente
Por favor, consulte esta URL. esta URL puede ayudarlo a resolver problemas https://docs.puppet.com/puppet/5.0/ssl_regenerate_certificates.html
fuente