Alle Beiträge von Malte

Funktionierende Lösung zur Installation von Ubuntu 22.04 über iPXE mit cloud-init, subiquity, auto-install, curtin

Ich entschuldige mich vorab für den folgenden polemischen Beitrag. Aber was Canonical da abgeliefert hat ist ehrlichgesagt eine einzige Katastrophe. Seit 22.04 gibt es den Legacy-Debian-Installer nicht mehr, welcher bei 20.04 noch verfügbar war. Möchte man sauber Hosts über PXE komissionieren, ist bei Ubuntu nun cloud-init, subiquity, auto-install oder wie auch immer sie den Unsinn nennen, angesagt. Hauptsache die Buzzword-Quote stimmt, Funktionalität ist nunmehr nebensächlich. „Cloud-init is the industry standard multi-distribution method for cross-platform cloud instance initialization“…

Die neue YAML-Syntax sollte Verbesserungen bringen, aber das Chaos ist dadurch nur noch größer. root-User lassen sich im „identity“ Dictionary nicht anlegen, automatische Updates im Installationsprozess lassen sich nur mit einem Hack abstellen, die Referenzierung auf user-data und user-meta Files ist völlig undurchdacht, die YAML-Files erfordern nicht-YAML-konforme Syntax um zu funktionieren (wer hat sich die bescheuerte Erfordernis von „#cloud-config“ in der ersten Zeile der user-data YAML ausgedacht?), der Installationsprozess wird ewig in die Länge gezogen, ISO-Images sind zusätzlich zum Kernel und der Initramdisk nun auch bei Installation nötig und als wäre das nicht genug, werden diese in der Standardkonfiguration auch noch doppelt geladen (2×1,3GB) sodass eine Installation mindestens 3GB RAM erfordert, mit Hack dann 2GB. Schöne neue Welt.

Funktionierende Lösung zur Installation von Ubuntu 22.04 über iPXE mit cloud-init, subiquity, auto-install, curtin weiterlesen

WordPress-Seiten im Nginx + PHP-FPM Stack mit wenig Aufwand effizient cachen

Die Zeiten sind doppelplusungut, um kein Blatt vor den Mund zu nehmen, möchte ich sagen, sie sind beschissen. Die aktuellen Energiekosten sind eine Katastrophe und dazu zählt letztlich auch der Strompreis. Ein Grund mehr im Webserver- und IT-Bereich auf Sparsamkeit zu achten, denn letztlich kommt ihr zwar nicht unmittelbar für VPS-, Dedicated- oder Webhosting auf, aber euer ISP schon – und der wird bei entsprechenden Ausgaben dann auch die Einnahmen steigern müssen (früher oder später).

Zudem erlaubt effizientes Caching trotz bequemer Webinterfaces bei Webanwendungen wie WordPress eine gute Seitenperformance, wenn man nicht einen von 1000 mittelprächtig entwickelten und gewarteten statischen Seitengeneratoren nutzen möchte.

Schauen zu uns zunächst mal an, was unser Ziel ist:

WordPress-Seiten im Nginx + PHP-FPM Stack mit wenig Aufwand effizient cachen weiterlesen

Hetzner Storage Box Sub-Account via sshfs über Port 23 auf Linux-System mounten

Leider macht Hetzner keine Anstalten, diese Information in Ihre Dokumentation aufzunehmen. Möchte man seine Hetzner Storage Box via sshfs mounten, so ist zwingend dem Pfad beim Mount-Vorgang ein /home voranzustellen.

Systemd-Unit-Beispiel:

[Unit]
Description=Hetzner Storage Box sshfs mount
Requires=network-online.target
After=network-online.service

[Install]
WantedBy=multi-user.target

[Mount]
What=u123456-sub1@u123456-sub1.your-storagebox.de:/home
Where=/mnt
Type=sshfs
Options=_netdev,allow_other,x-systemd.automount,IdentityFile=/home/user/.ssh/id_rsa,reconnect,uid=33,gid=33,default_permissions,ssh_command=ssh -4 -p 23

Im vorgenannten Beispiel werden so der Dateieigner mit der UID 33 und GID 33 gesetzt, ssh mittels IPv4 forciert und der Port 23 spezifiziert. Die Daten zur Authentifikation liegen im unter „IdentityFile“ angegeben Pfad.

Im Beispiel wird das Wurzelverzeichnis des Sub-Accounts der Storage Box entsprechend nach /mnt gemountet. Möchte man Unterverzeichnisse mounten, so ist /home/unterverzeichnis zu verwenden.

SSH reverse tunneling / Rückwärtstunnel einrichten

Kürzlich probierte ich für eine Webseite, die eigentlich bei einem (mittlerweile) relativ guten Webhoster lag, ein sogenanntes Reverse-Proxying mit SSL-Offloading einzurichten. Leider schlug der Versuch nach einiger Zeit fehl, da die Firewall des Webhosters die gesammelten und dauerhaften Requests seitens des Reverse-Proxy bemerkte und sperrte.

Es war also klar, dass die Seite in jedem Fall migriert werden müsse, um einen vernünftigen Betrieb und SSL mit LetsEncrypt (das ist der Punkt, an dem es beim besagten Webhoster leider auch in 2021 immernoch hapert) zu gewährleisten.

SSH reverse tunneling / Rückwärtstunnel einrichten weiterlesen

Bitrix24.CRM als Virtual Appliance hinter nginx in Plesk (ohne Kommandozeile)

Um Plesk für Bitrix24.CRM als Virtual Appliance zu nutzen, muss:

  • die Appliance aufgesetzt und für den Plesk-Host netzwerktechnisch zugänglich sein
    • für unser Beispiel unerheblich: die Appliance wurde als QEMU/KVM-VM aufgesetzt und mit einem isolated-Netzwerk die beiden Hosts miteinander verbunden
  • die Wunschdomain für Bitrix in Plesk eingerichtet sein
Bitrix24.CRM als Virtual Appliance hinter nginx in Plesk (ohne Kommandozeile) weiterlesen

Zeit unter Linux via GSM synchronisieren

Der RaspberryPi und viele ähnliche Einplatinencomputer haben ab Werk keine RTC aka „Real Time Clock“ und können ohne funktionierende Internetverbindung ihre Zeit nicht korrekt beibehalten. Daher nutzen die meisten RaspberryPi Linux-Distributionen NTP um die Zeit immer direkt nach dem Systemstart wieder ins Lot zu bringen. Wenn es nicht möglich ist, eine Internetverbindung aufzubauen und daher kein NTP zu nutzen, aber ein GSM-Modem oder altes Mobiltelefon sowie eine valide SIM-Karte vorhanden ist, könnte diese Anleitung eine Lösung zur Zeitsynchronisation darstellen.

Zeit unter Linux via GSM synchronisieren weiterlesen