Puppet: SSL Zertifikate neu erzeugen für Master, Agent und PuppetDB

Wenn man „ausversehen“ mal auf dem Puppetmaster Server ein

puppet cert clean --all

ausgeführt hat und dann versucht das ganze Schlamassel wieder auszubaden sind folgende Informationen gut zu wissen:

  • Neue Zertifikate auf den Nodes erzeugt man, in dem man das Verzeichnis /var/lib/puppet/ssl einfach umbenennt und den Agent neu laufen lässt:
    $ mv /var/lib/puppet/ssl /var/lib/puppet/ssl_old
    $ puppet agent --test --server puppet.example.org
  • Wenn man auf dem Puppetmaster ebenfalls ein neues Zertifikat erzeugt und es dann Fehlermeldungen auf den Nodes gibt nach dem Motto „hostname was not match with the server certificate“ helfen folgende Schritte:
    1. Auf dem Puppetmaster Server den Certificate Hostname anzeigen:
      $ puppet master --configprint certname
    2. Puppetmaster ausstellen und altes Zertifikat löschen:
      $ service puppetmaster stop
      $ find $(puppet master --configprint ssldir) -name "$(puppet master --configprint certname).pem" -delete
    3. Den Zertifikatsnamen und die Alternativen DNS-Namen in der /etc/puppet/puppet.conf eintragen mit den folgenden Optionen:
      [master]
      certname=puppet.example.org
      certdnsname=puppet.example.org
      dns_alt_names=puppetmaster.example.org
    4. Puppetmaster Server im Vordergrund starten und zusehen wie die neuen Zertifikate generiert werden, wenn die Meldung „notice: Starting Puppet master version…“ dort steht mit Strg+c beenden:
      $ puppet master --no-daemonize --verbose
      Strg+c
      $ service puppetmaster start
  • Wenn es dann von PuppetDB eine Fehlermeldung gibt nach dem Motto „‚replace facts‘ to PuppetDB: certificate verify failed“ hilft folgendes:
    $ service puppetdb stop
    $ mv /etc/puppetdb/ssl /etc/puppetdb/ssl_old
    $ /usr/sbin/puppetdb-ssl-setup -f
    $ service puppetdb start

Infos von hier und da.

From Babyphone to Babycam

Als Mensch der sich für Technik begeistert, habe ich, als die Tochter auf dem Weg zu uns war, mich mit dem Thema Babyphone auseinandergesetzt. Da Alida dann erst im Beibett geschlafen hat war es Anfangs noch nicht so akut. Später haben wir uns dann ein klassisches Babyphone gekauft. Wir nutzen es hauptsächlich für Reisen weil es auch in der Fremde einfach in Betrieb zu nehmen ist. Es war aber auch bei uns in der Wohnung in Gebrauch. Als wir dann das Mobilteil nach einem Besuch bei meinen Eltern vergessen hatten, habe ich es der Familie Simons nachgemacht und eine Babycam im Kinderzimmer installiert.

Nach einigen Anlaufschwierigkeiten ist das Setup inzwischen nicht mehr aus der Wohnung wegzudenken. Die Kamera ist die gleiche wie bei Michael und Christina, die App für das Smartphone, ob des anderen Ökosystems, von Android:

Angeschlossen ist das ganze bei uns per Powerlan weil ich WLAN direkt neben dem Bett nicht so prickelnd finde und bei uns in der Wohnung dort nicht so einfach ein Netzwerkkabel gelegt werden kann. Außerdem habe ich mir noch eine Wandhalterung gekauft, mit der ich die Kamera einfach an ein Regal geschraubt habe. Das ganze sieht dann in der Praxis wie folgt aus:

https://twitter.com/pregopresto/statuses/520643598254354433

https://twitter.com/pregopresto/statuses/520902955709767680

https://twitter.com/pregopresto/statuses/537927791438999553

Dieser Blogthema ist schon recht alt, war jedoch bisher nicht zu Ende geschrieben und veröffentlicht worden.

SSL: Zertifikate auf sha2 Umstellen…

Key und CSR neu erzeugen. Das -sha256 ist das entscheidende:

openssl req -new -nodes -newkey rsa:2048 -sha256 -keyout sub.example.org.sha2.key -out sub.example.org.sha2.csr

Wenn das Zertifikat im Apache eingebunden ist auch gleich prüfen ob SSLProtocol und SSLCipherSuite aktuell ist. Aktuelle Empfehlung von BetterCrypto.org lautet:

SSLProtocol All -SSLv2 -SSLv3
 
SSLCipherSuite 'EDH+CAMELLIA:EDH+aRSA:EECDH+aRSA+AESGCM:EECDH+aRSA+SHA384:
	EECDH+aRSA+SHA256:EECDH:+CAMELLIA256:+AES256:+CAMELLIA128:+AES128:
	+SSLv3:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!DSS:!RC4:!SEED:
	!ECDSA:CAMELLIA256-SHA:AES256-SHA:CAMELLIA128-SHA:AES128-SHA'

Ob alles gut ist, vor allem auch mit der Chain kann man dann sehr gut beim Qualys SSL Labs Server Test sehen.

An dieser Stelle möchte ich auch einmal auf den sehr guten Service von domaindiscount24 hinweisen. Ich habe meine Zertifikate (sofern nicht von CAcert) dort gekauft. Im Backend gab es bei Zertifikaten die vor der Heartbleed-Lücke gekauft wurden dann eine neue Spalte, in der man diese kostenlos erneuern konnte. Bei SHA1 vs. SHA2 ist nun das gleiche, man kann bei den Zertifikaten kostenlos dazwischen hin und her wechseln. Klasse!

dd24-Zertifikate