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

cipherli.st Alternativen

Gegen Ende Januar schloss ein Dienst seine Pforten, den ich sehr schätzte. https://cipherli.st bot zusammengefasste Informationen zum idealen SSL-Setup unterschiedlicher Serveranwendungen, darunter nginx und HAProxy.

Der Domainname war leicht zu merken und dank des Quelltextes auf GitHub konnten Personen auf der ganzen Welt zur Snippet-Sammlung beitragen.
Da ich den Dienst sehr nützlich fand, überlegte ich kurz, ihn zu forken und hier zur Verfügung zu stellen. Ein Blick in den GitHub Network-Graph offenbarte jedoch, dass vor mit bereits mindestens 5 weitere Personen auf diese Idee gekommen waren:

cipherli.st Alternativen weiterlesen