Le périphérique de marionnettes ne peut pas recevoir de certificat d'émetteur local

J'ai installé puppet 4.3 et centos7, Utiliser Puppet Device Gérer les routeurs Cisco. Server de nom d'hôte - "puppetmaster" (Lancer

hostnamectl puppetmaster

) Sur le serveur centos Le maître de la marionnette et de l'agent sont lancés.

Après la mise en place et la configuration device.conf Quand commence sudo puppet device --debug Je vois les erreurs suivantes:

Error: /File[/opt/puppetlabs/puppet/cache/devices/r1/facts.d]: Failed to generate additional resources using 'eval_generate': SSL_connect returned=1 errno=0 state=error: certificate verify failed: [unable to get local issuer certificate for /CN=puppetmaster]
Error: /File[/opt/puppetlabs/puppet/cache/devices/r1/facts.d]: Could not evaluate: Could not retrieve file metadata for puppet:///pluginfacts: SSL_connect returned=1 errno=0 state=error: certificate verify failed: [unable to get local issuer certificate for /CN=puppetmaster]

je peux courir

puppet agent --test

Sur le serveur avec succès:

sudo puppet agent --test
Info: Using configured environment 'production'
Info: Retrieving pluginfacts
Info: Retrieving plugin
Info: Caching catalog for puppetmaster
Info: Applying configuration version '1449189804'

Voici mon /etc/puppetlabs/puppet/device.conf

[r1]
type cisco
url telnet://puppet:123456@r1/

Voici mon /etc/puppetlabs/puppet/puppet.conf

[master]
vardir = /opt/puppetlabs/server/data/puppetserver
logdir = /var/log/puppetlabs/puppetserver
rundir = /var/run/puppetlabs/puppetserver
pidfile = /var/run/puppetlabs/puppetserver/puppetserver.pid
codedir = /etc/puppetlabs/code
dns_alt_names = puppetmaster

[agent]
certname = puppetmaster
server = puppetmaster

Cela devrait être une sorte de problème avec un certificat, tel qu'une non-conformité du nom, mais je ne sais pas ce qui pourrait en être la cause de cela. L'agent fonctionne sur le même serveur que le Master et j'ai configuré toutes les configurations correctement. (Au moins je le pense).

Voici un certificat renvoyé par une marionnette:

 sudo puppet cert --print --all | grep CN
Issuer: CN=Puppet CA: puppetmaster
Subject: CN=puppetmaster

Voici des certificats non traités ca.pem et puppetmaster.pem:

openssl x509 -in /etc/puppetlabs/puppet/ssl/certs/ca.pem -noout -text | grep CN
Issuer: CN=Puppet CA: puppetmaster
Subject: CN=Puppet CA: puppetmaster
DirName:/CN=Puppet CA: puppetmaster
openssl x509 -in /etc/puppetlabs/puppet/ssl/certs/puppetmaster.pem -noout -text | grep CN
Issuer: CN=Puppet CA: puppetmaster
Subject: CN=puppetmaster

Quand je cours openssl Pour vérifier le certificat, je vois la même erreur:

sudo openssl verify -CApath /etc/puppetlabs/puppet/ssl/certs/ca.pem /etc/puppetlabs/puppet/ssl/certs/puppetmaster.pem

/etc/puppetlabs/puppet/ssl/certs/puppetmaster.pem: CN = puppetmaster
error 20 at 0 depth lookup:unable to get local issuer certificate

J'ai confirmé les paramètres de configuration et j'ai passé
http://docs.puppetlabs.com/pup ... .html
(à plusieurs reprises), Mais sans cubes.
Invité:

Blanche

Confirmation de:

Ok figurait dehors.

Comme je l'ai dit, j'ai nettoyé et régénéré des certificats Puppets, Mais ce que je n'ai pas fait, c'était clair:

/opt/puppetlabs/puppet/cache/devices/

Puppet mis en cache un ancien certificat pour l'appareil, il a donc essayé de l'utiliser au lieu de créer un nouveau.

Après avoir supprimé le contenu de ce dossier, j'ai pu courir

puppet device

Pour répondre aux questions, connectez-vous ou registre