Der Autor des Redirect-Images hat meinen Fix von gestern übernommen und auch gleich noch Version 0.3.2 veröffentlicht. Ich aktualisiere die Docker-Container und freue mich, dass sie sich jetzt richtig stoppen lassen.
Autor: Christian
Heute schon gebloggt?!
Bis jetzt gibt’s auf dem Server nur einen praktisch leeren Web-Server und ein paar Redirects. So soll’s bleiben… NICHT!
Damit Dana und ich endlich den gesammelten Content irgendwo abwerfen können, lege ich die Subdomain blog.customieze.de an und starte einen Docker-Container für WordPress und einen mit der dazu passenden MySQL-Datenbank. Ein paar Zeilen Konfiguration später laufen beide und reden sogar miteinander!
Wie immer muss natürlich auch noch blog.customieze.com angelegt und mit einem passend konfigurierten Redirect-Container hinterlegt werden.
Container? Sicher!
Momentan läuft auf dem Server noch nichts wirklich sinnvolles. Damit das nicht so bleibt, installiere ich Docker Community Edition. Der Plan ist, den Großteil der Server-Software in Form von Docker-Containern laufen zu lassen.
Als nächstes starte ich jeweils einen Docker-Container auf Basis der Images jwilder/nginx-proxy und jrcs/letsencrypt-nginx-proxy-companion. Unverschlüsselte HTTP-Verbindungen liefern ausschließlich Weiterleitungen auf die entsprechenden HTTPS-Äquivalente, die durch das Zusammenspiel der beiden Docker-Container mit Zertifikaten von Let’s Encrypt abgesichert sind.
Hinter der „Master-URL“ https://www.customieze.de läuft vorerst ein blanker Apache Web Server, der einfach nur „It works!“ behauptet. Stimmt ja auch.
Um sämtliche Kombinationen aus „www.“, „.de“ und „.com“ letztlich auf die Master-URL umzulenken, sind noch ein paar Weiterleitungen notwendig. Dafür benutze ich das Docker-Image schmunk42/nginx-redirect. Über den vorher aufgesetzten Mechanismus bekommen auch die daraus erstellten Redirect-Container vollwertige SSL-Zertifikate.
Beim Test der der Redirect-Container fiel mir allerdings noch auf, dass sie sich nicht sauber stoppen lassen. Die Lösung dafür spiele ich mit einem Pull-Request an den Autor zurück.
Gib dem Server vier Namen!
Damit der frisch aufgesetzte Server auch über die Customieze-Domains erreichbar ist, sind ein paar Aktionen in der DNS-Konfiguration notwendig:
Zum Server gehören eine (!) IPv4-Adresse und ein IPv6-Subnetz mit ca. 18 Trillionen Adressen, von denen vorerst aber auch erstmal eine reicht. Bei STRATO konfiguriere ich die A- bzw. AAAA-Records, damit die insgesamt vier Hostnamen („.de“ und „.com“, jeweils mit und ohne „www.“) auf die festgelegte IPv4- bzw. IPv6-Adresse verweisen. Die PTR-Records für die „Rückrichtung“ setze ich bei Hetzner passend dazu auf „customieze.de“.
Damit ist der Server schon mal unter seinen vier Namen erreichbar.
Ein Server für die Customieze
Die Entscheidung am Morgen danach: Hetzner. Das Zünglein an der Waage? Der Support. Ist zwar etwas teurer, aber das ist es mir einfach mal wert.
In der Server-Börse werde ich fündig: Ein stattlicher Intel i7-4770 @ 3.40 GHz mit 32 GB RAM und 2 × 3 TB HDD für nicht minder stattliche 44 € im Monat. Gekauft! Ähm… Gemietet!
Keine fünf Minuten später bin ich per SSH auf dem Rescue-System angemeldet und kann den Server fertig aufsetzen. Konfiguration und Installation des finalen Betriebssystems sind zusammen nochmal eine Sache von zehn Minuten. Fertig ist ein CentOS 7 mit einem RAID1 über den beiden Platten!
Kaum ist der Server eingerichtet, tauchen auch die üblichen Loginversuche aus China auf – irgendwelche Bots, die das Netz nach offenen Servern abgrasen. Damit da nichts passiert, lege ich einen User an und verbiete „root“ den Login übers Netz. Die Remote-Anmeldung mit Username und Passwort wird bei der Gelegenheit auch gleich noch deaktiviert. Nachdem „root“ nun abgedichtet ist, machen die Bots mit „ftp“, „jenkins“, „testuser“ und allen möglichen Vornamen weiter. Dass das praktisch aussichtslos ist, ist Bots offenbar egal.
Techniker ist informiert!
Nachdem das Kind jetzt einen Namen hat, muss natürlich auch die entsprechende Infrastruktur her. Das Abendprogramm der nächsten Wochen steht also fest!
Als erstes sind die Domains dran, nicht dass sie noch jemand wegschnappt! Neben der primären customieze.de soll es auch noch customieze.com sein, zumal der Name ja auch Englisch ausgesprochen werden kann/soll. Erstaunlicherweise sind beide noch frei und werden über STRATO reserviert. Warum ausgerechnet dort? Tja, wenn ich das wüsste… Es musste halt schnell gehen und ich kenne das – zugegebenermaßen ziemlich umständliche – Webinterface für die Subdomain-Verwaltung schon in- und auswendig. Mittelfristig soll das ganze DNS-Geschwurbel aber schon woanders hin.
Die Domains sind also schon mal reserviert, aber wo soll das alles letztlich laufen? Einfach nur ein paar Gigabyte Webspace mit PHP und MySQL? Laaangweilig! Da ich schon seit geraumer Zeit mit dem Gedanken spiele, mir einen eigenen Server zum Basteln zu besorgen, ist JETZT endlich ein willkommener Anlass da! Aber woher nehmen, wenn nicht stehlen? Auch bei Servern gibt’s Anbieter wie Sand am Meer. Es soll letztlich Docker drauf laufen, deshalb bleiben nur KVM-vServer und echte Root-Server übrig. Leider schränkt das die Auswahl nicht so wirklich ein.
Nach einigen Stunden Recherche schwanke ich noch zwischen Hetzner und netcup, ein Konsens mit mir selbst ist nicht in Sicht.
Mal eine Nacht drüber schlafen…