Ho configurato un Puppet Master / Agent e ho firmato con successo il certificato per l'agente sul master. Tuttavia, quando corro puppet agent --test
ottengo un errore simile al seguente:
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]
il hostname.domain.com
è il maestro
Come posso risolvere questo problema? Mi sono assicurato che entrambi gli orologi si trovassero all'ora corretta nello stesso fuso orario, ho cancellato tutto nella /var/lib/puppet/ssl
directory dell'agente e mi sono dimesso, non so cos'altro fare.
masterhost.domain.com
è lo stesso hostname.domain.com
della tua domanda, giusto? Proviamo questo, vedremo se i certificati si verificano manualmente; esegui openssl s_client -connect masterhost.domain.com:8140 -showcerts
e copia i dati del certificato (inizia con -----BEGIN CERTIFICATE-----
, includi quella riga e la riga del certificato finale) in un nuovo file, quindi esegui openssl verify -CAfile /var/lib/puppet/ssl/certs/ca.pem /path/to/file/from/last/command
e verifica se verifica.
-showcerts
con il contenuto di /var/lib/puppet/ssl/certs/ca.pem
- dovrebbero essere identici?