Puppet - Configuration du certificat de signature SSL

Lorsque le logiciel de l'agent Puppet s'exécute pour la première fois sur un nœud Puppet, il génère un certificat et envoie la demande de signature de certificat au maître Puppet. Avant que le serveur Puppet ne puisse communiquer et contrôler les nœuds d'agent, il doit signer le certificat de ce nœud d'agent particulier. Dans les sections suivantes, nous décrirons comment signer et vérifier la demande de signature.

Répertorier les demandes de certificat actuelles

Sur le maître Puppet, exécutez la commande suivante pour voir toutes les demandes de certificat non signées.

$ sudo /opt/puppetlabs/bin/puppet cert list

Comme nous venons de configurer un nouveau nœud d'agent, nous verrons une demande d'approbation. Voici leoutput.

"Brcleprod004.brcl.com" (SHA259) 
15:90:C2:FB:ED:69:A4:F7:B1:87:0B:BF:F7:ll:
B5:1C:33:F7:76:67:F3:F6:45:AE:07:4B:F 6:E3:ss:04:11:8d

Il ne contient aucun signe + (signe) au début, ce qui indique que le certificat n'est toujours pas signé.

Signer une demande

Afin de signer la nouvelle demande de certificat qui a été générée lorsque l'exécution de l'agent Puppet a eu lieu sur le nouveau nœud, la commande Puppet cert sign serait utilisée, avec le nom d'hôte du certificat, qui a été généré par le nœud nouvellement configuré qui a besoin à signer. Comme nous avons le certificat de Brcleprod004.brcl.com, nous utiliserons la commande suivante.

$ sudo /opt/puppetlabs/bin/puppet cert sign Brcleprod004.brcl.com

Voici le output.

Notice: Signed certificate request for Brcle004.brcl.com 
Notice: Removing file Puppet::SSL::CertificateRequest Brcle004.brcl.com at 
'/etc/puppetlabs/puppet/ssl/ca/requests/Brcle004.brcl.com.pem'

Le serveur de marionnettes peut désormais communiquer avec le nœud auquel appartient le certificat de signature.

$ sudo /opt/puppetlabs/bin/puppet cert sign --all

Révocation de l'hôte de la configuration de la marionnette

Il y a des conditions sur la configuration de la reconstruction du noyau quand il faut supprimer l'hôte de l'installation et l'ajouter à nouveau. Ce sont ces conditions qui ne peuvent pas être gérées par la marionnette elle-même. Cela peut être fait en utilisant la commande suivante.

$ sudo /opt/puppetlabs/bin/puppet cert clean hostname

Affichage de toutes les demandes signées

La commande suivante générera une liste de certificats signés avec + (signe) qui indique que la demande est approuvée.

$ sudo /opt/puppetlabs/bin/puppet cert list --all

La suite sera sa output.

+ "puppet" (SHA256) 5A:71:E6:06:D8:0F:44:4D:70:F0:
BE:51:72:15:97:68:D9:67:16:41:B0:38:9A:F2:B2:6C:B 
B:33:7E:0F:D4:53 (alt names: "DNS:puppet", "DNS:Brcle004.nyc3.example.com")  

+ "Brcle004.brcl.com" (SHA259) F5:DC:68:24:63:E6:F1:9E:C5:FE:F5:
1A:90:93:DF:19:F2:28:8B:D7:BD:D2:6A:83:07:BA:F E:24:11:24:54:6A 

+ " Brcle004.brcl.com" (SHA259) CB:CB:CA:48:E0:DF:06:6A:7D:75:E6:CB:22:BE:35:5A:9A:B3

Une fois que ce qui précède est fait, nous avons notre infrastructure prête dans laquelle le maître Puppet est maintenant capable de gérer les nœuds nouvellement ajoutés.