===== Letsencrypt-Fake für den Congress ===== Da während des Congresses potentiell alle Infrastruktur (incl. Let's Encrypt bzw. deren Rate Limits) kaputt ist, verwenden wir während des Congresses kein echtes Let's Encrypt renewal. Stattdessen generieren wir ein LE-Cert für alle CDN-Hosts im Dezember, welches dann 3 Monate und damit bis deutlich bis nach dem Congress gültig ist. ==== Generieren des Zertifikats ==== Die Scripte zum generieren des Zertifikats leben in ''voc@mngslave.dus.c3voc.de:/home/voc/letsencrypt-cdn-for-34c3''. Dort werden in der Datei ''domains.txt'' alle Domains benannt, die zum CDN gehörten. Es wird //dehydrated// verwendet um ein einzelnes Zertifikat für alle diese Domains zu holen. Dazu wird die ''dns-01'' challenge benutzt, da dafür die Hosts selbst nicht angefasst, ja nicht einmal online sein müssen. Der Key ''Kle-dns-challenge.34c3.c3voc.de.+163+*.{key,private}'' wird zur Authorisierung ggü. dem DNS-Server verwendet. Er ist üblicherweise deaktiviert. Vor dem Congress muss er in ''/etc/bind/named.conf'' aktiviert werden in dem diese Blöcke einkommentiert werden und der ''bind''-Service anschließend neu geladen werden muss: #key "le-dns-challenge.34c3.c3voc.de" { # algorithm hmac-sha256; # secret "fNbiQG2VCxBb7K/kTg2K2/8saRAeiYMSmyYIxuFShts="; #}; # update-policy { # grant le-dns-challenge.34c3.c3voc.de subdomain c3voc.de txt; # }; Anschließend kann das Script ''/home/voc/letsencrypt-cdn-for-34c3/update-cert.sh'' verwendet werden. Es generiert ein neues Zertifikatr in ''/home/voc/letsencrypt-cdn-for-34c3/cdn-all-domains/cdn.c3voc.de/{fullchain,chain,privkey,cert}.pem''. ==== Verwenden des Zertifikats ==== Zum Rollout auf den Hosts muss der Inhalt dieser vier Dateien in das KeePass-File unter ''ansible/ssl/certs/34c3.cdn.c3voc.de'' hinterlegt werden. Dazu werden die Textfelder unter ''Advanced->Additional attributes'' verwendet. Nach dem Comitten des neuen KeePass-Files nicht vergessen mit ''./update_keepass_version'' die erforderliche KeePass-Datei-Version im cm zu aktualisieren. Nun kann im cm in den ''host_vars'' der relevanten Hosts der Rollout dieses Fake-Zertifikats durch aktivieren der Property ''#letsencrypt_fake: "34c3.cdn.c3voc.de"'' aktiviert werden. Ist diese Property gesetzt wird das normale Let's Encrypt-Setup deaktiviert und stattdessen das Zertifikat aus dem KeePass ausgerollt.