Puppet: Hiera und Defined Types

puppetlabs apache vhost hiera howto

Das waren in etwa die Stichworte in der Suche als ich versucht habe meine mit dem puppetlabs/apache Modul definierten Apache vhosts aus der site.pp nach hiera zu migrieren. Es wollte nämlich einfach nicht klappen. Nach einiger Zeit bin ich dann darauf gestoßen, dass es sich bei dem apache::vhost um einen sogenannten Defined Type handelt. Diese sind sehr ähnlich zu Klassen, lassen sich aber im Gegensatz zu diesen mehrfach auf einem Node definieren.

Das automatische Parameter-Lookup wie bei den Klassen funktioniert bei Defined Types hingegen nicht. Lösung ist die create_resources() Funktion. Aber damit ich das später auch noch verstehe wenn ich hier in den Blogeintrag hineingucke schreibe ich ein praktisches Beispiel auf.

Ein Apache vhost in der site.pp:

node 'www.example.org' inherits default {
apache::vhost {'www.example.org':
  servername    => 'www.example.org',
  serveraliases => [ 'example.org' ],
  serveradmin   => 'webmaster@example.org',
  port          => '80',
  docroot       => '/var/www/example.org/www/',
}

wird in hiera zu:

---
apache::vhost:
  'www.example.org':
    servername: 'www.example.org'
    serveraliases:
      - 'example.org'
    serveradmin: 'webmaster@example.org'
    port: '80'
    docroot: '/var/www/example.org/www/'

und damit dieser Eintrag auch ausgewertet und der vhost erzeugt wird sieht die site.pp danach wie folgt aus:

node 'www.example.org' inherits default {
  $myApacheVhosts = hiera('apache::vhost', {})
  create_resources('apache::vhost', $myApacheVhosts)
}

Ich empfehle hier wärmstens das Chapter 3 – Using Hiera von Puppet Lunch. Ich habe lange im Netz gesucht und bin schließlich dort fündig geworden.

HowTo: Bios Update on Dell XPS 13 9333 (Haswell, late 2013) with Ubuntu and FreeDos

  1. gparted installieren und eine leere Fat16 Partition auf dem USB-Stick erstellen.
  2. unetbootin installieren und FreeDos 1.0 installieren.
  3. Die .exe Datei fuer das Bios-Update (heute: 9333A04.exe) von der Dell-Homepage herunterladen (Link)
  4. Den USB-Stick mounten und die .exe Datei in das root-Verzeichnis kopieren (neben ubninit, ubnkern, ldlinux.sys usw.)
  5. Laptop neu starten, F12 druecken. In den Bootoptionen das USB-Geraet waehlen
  6. Den ersten Screen von Unetbootin (Default) bestaetigen.
  7. Auf dem zweiten Bootscreen NICHT DIE ERSTE VORAUSGEWAEHLTE OPTION booten, sondern eine Nachfolgende. Ansonsten wird FreeDos auf der Festplatte installiert und das vorhandene System ueberschrieben.
  8. Nachdem FreeDos gebootet ist mit c: in das Laufwerk C: wechseln
  9. Dort die Datei ausfuehren. Dabei ist wichtig, dass der Laptop an das Stromnetz angeschlossen ist und nicht auf Batterie laeuft.
  10. Das Bios-Update wird nun installiert. Dabei gibt es verschiedene Fortschrittsbalken, der Laptop piepst wild rum und startet mehrfach neu.

HowTo: Apache SSL and perfect forward secrecy

Man liesst die Tage ueberall von perfect forward secrecy. Das bedeutet, dass man bei verschluesselten Verbindungen erst sichere Protokolle anbietet und gleichzeitig unsichere verbietet. Mit den folgenden Einstellungen kann man in Apache einen SSL vHost selber PFS like absichern und auch BEAST (Browser Exploit Against SSL/TLS) Attacken abschwaechen:

SSLProtocol all -SSLv2
SSLHonorCipherOrder On
SSLCipherSuite EECDH+AES:EDH+AES:-SHA1:EECDH+RC4:EDH+RC4:RC4-SHA:EECDH+AES256:EDH+AES256:AES256-SHA:!aNULL:!eNULL:!EXP:!LOW:!MD5

Um die SSL Konfiguration des vHosts zu testen ist noch der SSL Server Test von Qualys SSL Labs zu empfehlen.

(via)

Howto: Belkin Surf WLAN USB-Adapter (050d:945a) in Ubuntu

Die Firma ist umgezogen, es liegen noch keine neuen Netzwerkkabel und alles laeuft mit WLAN. Weil gruetze ham wir nun guenstige N-Sticks bekommen die aber fuer aktuellen Ubuntu zu neu sind. Deswegen halt plug and compile. Neusten Linuxtreiber von realtek runterladen (URL) und danach as follows. Bitte XXX mit entsprechender Version ersetzen bzw. Tab-completion nutzen:

sudo aptitude install linux-headers-$(uname -r) build-essential unzip 
unzip -x RTL8191SU_usb_linux_XXX.zip
cd rtl8712_8188_8191_8192SU_usb_linux_XXX/driver
tar -xzf rtl8712_8188_8191_8192SU_usb_linux_XX.tar.gz
cd rtl8712_8188_8191_8192SU_usb_linux_XX
make
sudo make install

Danach den alten Treiber ueber die Blacklist sperren:

sudo echo "blacklist r8192s_usb" >> /etc/modprobe.d/blacklist.conf

und einen reboot machen. Anleitung is uebrigens von (da)