Configura un agente Puppet per il tuo server Puppet/Foreman.
Per prima cosa installa un agente compatibile con il tuo sistema operativo e con il server Puppet/Foreman, utilizzando il repository firmato del fornitore. Mantieni attivi i controlli dei certificati TLS e delle firme dei pacchetti e completa l’eventuale autenticazione richiesta dal repository. Utilizza i comandi di registrazione dei certificati adatti alla versione del tuo server.
Configurazione del repository firmato · Installazione dell’agente
/opt/puppetlabs/bin/puppet config set server YOURSERVERHERE
/opt/puppetlabs/bin/puppet config set certname `hostname -f`
vim /etc/puppet/puppet.conf
- rimuovi la sezione master
- aggiungere la sezione [agent]
- aggiungi server= YOURSERVERHERE
export PATH=/opt/puppetlabs/bin:$PATH
puppet agent --test
Esempio di output, di seguito:
root@dcae:/work# puppet agent --test
Info: Creating a new RSA SSL key for sbc-de-02.multitel.ro
Info: csr_attributes file loading from /etc/puppetlabs/puppet/csr_attributes.yaml
Info: Creating a new SSL certificate request for sbc-de-02.multitel.ro
Info: Certificate Request fingerprint (SHA256): FD:F3:D1:17:CB:AF:E3:03:55:C4:B4:5E:DC:4C:ED:55:E2:E4:2D:F5:89:36:1A:76:1A:FE:A5:E8:E5:F2:00:21
Info: Certificate for sbc-de-02.multitel.ro has not been signed yet
Couldn't fetch certificate from CA server; you might still need to sign this agent's certificate (sbc-de-02.multitel.ro).
Exiting now because the waitforcert setting is set to 0.
( impronta SHA256 modificata per motivi di sicurezza)
- questo creerà i certificati locali e si farà riconoscere dal tuo server puppet/foreman
- segnalerà che il certificato non è consentito
Accedi ora via SSH al server foreman/puppet.
Esegui: puppet cert list su YOURSERVERHERE
Esegui: puppet cert sign YOURCLIENTHOSTNAMEHERE
Esempio di output, di seguito:
root@repo55:~# puppet cert list
Warning: `puppet cert` is deprecated and will be removed in a future release.
(location: /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/application.rb:370:in `run')
"dcae.multitel.net" (SHA256) FD:F3:D1:17:CB:AF:E3:03:55:C4:B4:5E:DC:4C:ED:55:E2:E4:2D:F5:89:36:1A:76:1A:FE:A5:E8:E5:F2:00:21
root@foreman:~# puppet cert sign dcae.multitel.net
Warning: `puppet cert` is deprecated and will be removed in a future release.
(location: /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/application.rb:370:in `run')
Signing Certificate Request for:
"dcae.multitel.net" (SHA256) FD:F3:D1:17:CB:AF:E3:03:55:C4:B4:5E:DC:4C:ED:55:E2:E4:2D:F5:89:36:1A:76:1A:FE:A5:E8:E5:F2:00:21
Notice: Signed certificate request for dcae.multitel.net
Notice: Removing file Puppet::SSL::CertificateRequest dcae.multitel.net at '/etc/puppetlabs/puppet/ssl/ca/requests/dcae.multitel.net.pem'
root@repo55:~#
(impronta SHA256 e nomi host modificati per motivi di sicurezza)
Torna alla tua macchina client Puppet.
Esegui "puppet agent --test" - di nuovo sul server. Ora dovrebbe funzionare
- se segnala che non è abilitato
- esegui "puppet agent --enable"