J'ai un maître / agent de marionnettes configuré et j'ai réussi à signer le certificat de l'agent sur le maître. Cependant, lorsque je cours, puppet agent --test
j'obtiens un échec qui ressemble à ceci:
Warning: Unable to fetch my node definition, but the agent run will continue:
Warning: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed: [certificate signature failure for /CN=hostname.domain.com]
Info: Retrieving plugin
Error: /File[/var/lib/puppet/lib]: Failed to generate additional resources using 'eval_generate: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed: [certificate signature failure for /CN=hostname.domain.com]
Error: /File[/var/lib/puppet/lib]: Could not evaluate: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed: [certificate signature failure for /CN=hostname.domain.com] Could not retrieve file metadata for puppet://hostname.domain.com/plugins: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed: [certificate signature failure for /CN=hostname.domain.com]
Error: Could not retrieve catalog from remote server: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed: [certificate signature failure for /CN=hostname.domain.com]
Warning: Not using cache on failed catalog
Error: Could not retrieve catalog; skipping run
Error: Could not send report: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed: [certificate signature failure for /CN=hostname.domain.com]
la hostname.domain.com
est le maître
Comment puis-je réparer ça? Je me suis assuré que les deux horloges sont au bon moment dans le même fuseau horaire, j'ai tout supprimé dans le /var/lib/puppet/ssl
répertoire des agents et j'ai démissionné, je ne sais pas quoi faire d'autre.
masterhost.domain.com
le même que hostname.domain.com
dans votre question, non? Essayons cela, nous verrons si les certificats vérifient manuellement; exécutez openssl s_client -connect masterhost.domain.com:8140 -showcerts
-le et copiez les données du certificat (commence par -----BEGIN CERTIFICATE-----
, incluez cette ligne et la ligne de certificat de fin) dans un nouveau fichier, puis exécutez openssl verify -CAfile /var/lib/puppet/ssl/certs/ca.pem /path/to/file/from/last/command
-le et voyez s'il vérifie.
-showcerts
avec le contenu de /var/lib/puppet/ssl/certs/ca.pem
- ils devraient être identiques?