meine puppet.conf über den meister
[master]
certname = myname.mydomain.com
ca_server = myname.mydomain.com
certdnsnames = puppet;puppet.local;myname.dyndns.org;hivemind.local;
Nach meinem Verständnis mit den definierten Zertifikatsnamen sollte Folgendes funktionieren:
puppet agent --server myname.dyndns.org --test
aber ich erhalte den folgenden Fehler:
err: Could not retrieve catalog from remote server: hostname was not match with the server certificate
Wie vermeide ich diesen Fehler? Wie definiere ich Zertifikatsnamen richtig? Ich habe verschiedene Dokumentationen dazu gefunden, aber kein einfaches Beispiel. ii benutze "," für die Trennung, ich kann überhaupt nicht unterschreiben. Ich habe auch eine Syntax wie gesehen
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
aber für mich ist es nicht klar, wann man eine "Marionette" hinzufügt und wann nicht.
Verwenden Sie für Puppet 4+ die folgenden Befehle, um die akzeptierten DNS-Namen für das Puppetserver-Zertifikat zu ändern:
Benennen Sie vorhandene Zertifikate in * .backup um:
neues Zertifikat generieren (fügen Sie Ihre gewünschten alternativen Namen hinzu):
Puppetserver neu starten, um neue Zertifikate zu verwenden
quelle
certdnsnames
ist eine durch Doppelpunkte getrennte Liste.quelle
Gemäß
Sie müssen eine durch Doppelpunkte getrennte Liste (":" not ";") verwenden.
So sollte es sein
HTH
quelle
So fügen Sie dem Puppet Server-Zertifikat einen SAN-Eintrag hinzu:
Möglicherweise müssen über bestehende Zertifikate löschen
rm -rf $(puppet master --configprint ssldir)
undquelle