Come aggiungere più nomi DNS al mio burattinaio?

il mio puppet.conf sul maestro

[master] certname = myname.mydomain.com ca_server = myname.mydomain.com certdnsnames = puppet;puppet.local;myname.dyndns.org;hivemind.local; 

per la mia comprensione con i certdnsnames definito i seguenti dovrebbero funzionare:

 puppet agent --server myname.dyndns.org --test 

ma ho il seguente errore:

 err: Could not retrieve catalog from remote server: hostname was not match with the server certificate 

come evitare questo errore? come definire correttamente certdnsnames? ho trovato una documentazione difforms su questo, ma non un semplice esempio. ii uso "," per separazione non posso firmare affatto. Ho anche visto una syntax simile

 certdnsnames = puppet:puppet.intra.myserver.fr,puppet.myserver.fr:puppet,puppet:puppet,puppet.intra.myserver.fr,puppet.myserver.fr 

http://projects.puppetlabs.com/issues/5776

ma per me non è chiaro quando aggiungere un "burattino": e quando no.

  • Accesso alle macchine virtuali libvirt + KVM con DNS
  • DNS - Redirect dal vecchio server a nuovo
  • La configuration di sola lettura di una cc si applica solo a Active Directory?
  • Strumento per eseguire la ricerca in batch di server DNS assegnati a domini specifici
  • Cosa succederebbe se qualcuno avrebbe sciacquato l'host dal DNS pubblico di Google mentre il server di nome è in discesa?
  • La configuration IPv6 è importnte?
  • Come visualizzare la configuration della zona con dnscmd?
  • Come posso impostare la priorità zona in Microsoft DNS?
  • 4 Solutions collect form web for “Come aggiungere più nomi DNS al mio burattinaio?”

    A beneficio di chiunque altro che inciampa su questa risposta:

    A causa di CVE-2011-3872 , Puppet non support più l'opzione certdnsnames . Dalla documentazione:

    L'impostazione certdnsnames non è più funzionale, dopo CVE-2011-3872. Ignoriamo completamente il valore. Per la propria richiesta di certificato è ansible impostare dns_alt_names nella configuration e si applica localmente. Non esiste un'opzione di configuration per impostare nomi DNS alt, o qualsiasi altro valore subjectAltName, per un altro certificato di nodes. In alternativa è ansible utilizzare l'opzione -dns_alt_names command line per impostare le etichette aggiunte durante la creazione di una propria CSR.

    È ansible generare un certificato SSL per il server che utilizza il subjectAlternativeName come questo:

     $ puppet cert generate <puppet master's certname> --dns_alt_names=<comma-separated list of DNS names> 
    • Innanzitutto, certdnsnames è una list separata dai due punti.
    • In secondo luogo, questo errore si verifica perché l'agente sta contattando master utilizzando un nome host che non era incluso quando il certificato è stato firmato: http://docs.puppetlabs.com/guides/troubleshooting.html

    Per Puppet 4+ utilizzare i seguenti comandi per modificare i nomi accettati dns per il certificato del puppetserver:

    Rinominare i certificati esistenti su * .backup:

     mv /etc/puppetlabs/puppet/ssl/private_keys/$(hostname -f).pem{,.backup} mv /etc/puppetlabs/puppet/ssl/ca/signed/$(hostname -f).pem{,.backup} mv /etc/puppetlabs/puppet/ssl/certs/$(hostname -f).pem{,.backup} 

    generare un nuovo certificato (aggiungere i nomi dei nomi desiderati):

     puppet cert generate $(hostname -f) --dns_alt_names=$(hostname -f),puppet 

    riavviare il puppetserver per utilizzare nuovi certificati

     service puppetserver restart 

    Secondo

     puppet agent --genconfig 

    è necessario utilizzare un elenco separato dai due punti (":" e non ";").

    Quindi dovrebbe essere

     certdnsnames = 'puppet:puppet.local:myname.dyndns.org:hivemind.local' 

    HTH

    Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.