Kategorie: Server

Let’s encrypt: Fallstricke bei Domainwechsel

Vor einiger Zeit habe ich die Domain meines Blogs gewechselt – von www.kadder.de auf www.techblogger.net. Dabei gab es einen Fallstrick durch die Verwendung von Let’s encrypt.

Der Ansatz: beim Wechsel der Domain soll natürlich von der alten Domain auf die neue weitergeleitet werden. Das Problem: läuft das Zertifikat der alten Domain ab, führen SSL-Aufrufe zu einem Zertifikatsfehler. Dadurch gehen dann auch Rankings und Besucher verloren, die bisher die alte Seite aufgerufen haben.

Nach einigen Experimenten mit den Nginx-Weiterleitungs-Regeln (um zu verhindern, dass das Verzeichnis .well-known, welches für die webroot-Zertifizierung von Let’s encrypt benötigt wird auf die neue Domain umgeleitet wird) ist die Lösung doch naheliegend.

Um die automatische Aktualisierung des Zertifikats weiterhin nutzen zu können (eine sehr gute Anleitung dafür gibt es bei Digitalocean) ist ein Ansatz die Erweiterung des bestehenden Zertifikats für die neue Domain. Dieses muss zusätzlich auch die bisherige Domain beinhalten.

Ist das erledigt, wird für die alte Domain das gleiche Zertifikat konfiguriert wie für die Neue, mit dem Ergebnis dass die Weiterleitungen auch wieder für SSL-Verbindungen funktionieren.

FreeNAS 10 BETA – neue Oberfläche & Docker-Support

Mit FreeNAS 10 gibt es einige Grundlegende Änderungen, unter anderem Docker-Support. Die neue Version ist jetzt im Beta-Stadium: noch nicht bereit für den produktiven Einsatz, aber weit genug um die wesentlichen Features abzuschätzen.

FreeNAS 10 Beta Oberfläche (Quelle: FreeNAS-Blog)

FreeNAS 10 Beta Oberfläche (Quelle: FreeNAS-Blog)

FreeNAS 10 ist schon seit über einem Jahr in der Entwicklung und immer noch in der BETA-Phase – Grund dürfte die reine Menge an Neuerungen sein, die das Entwicklerteam einfließen lassen will. Neben einer aktualisierten Basis wird auch der Umgang mit „Plugins“ neu gestaltet, anders als bisher setzt man dabei nicht mehr auf Jails, sondern auf Docker-Container bzw. virtuelle Maschinen. Letztere können dann auch Desktop-Betriebssysteme wie Debian oder Ubuntu ausführen und bieten darüber die Möglichkeit, eine Vielzahl von Software zu verwenden. Entsprechende Templates für unterstützte VMs finden sich bei GitHub.

FreeNAS 9.10-RELEASE mit neuer FreeBSD-Basis

Bevor mit FreeNAS 10 eine komplett neue Version erscheint, ist jetzt FreeNAS 9.10 erschienen. Wichtigste Neuerung: FreeBSD 10.3-RC3 als Basis.

Die Oberfläche wurde nicht aktualisiert, dies wird erst mit FreeNAS 10 passieren. Das Upgrade von FreeNAS 9.3 ist denkbar einfach: den entsprechende „Train“ unter dem Menüpunkt „Aktualisierungen“ wählen und dann das Update starten. Danach dauert es etwas, und das System startet die neue FreeNAS-Version:

Upgrade von FreeNAS 9.3 auf 9.10 über die Auswahl eines neuen „Train“

Upgrade von FreeNAS 9.3 auf 9.10 über die Auswahl eines neuen „Train“

Die wichtigsten Punkte aus den FreeNAS 9.10 Release Notes:

  • Support für Intel I219-V & I219-LM Gigabit Ethernet Chipset
  • Support für Intel Skylake Architekture
  • Verbesserter Support für USB-Geräte (z.B. Netzwerk-Adapter)
  • USB 3.0 Geräte werden unterstützt
  • Samba (SMB filesharing) von Version 4.1 auf 4.3.4 aktualisiert
  • verschiedene Bug-Fixes, die mit FreeBSD10 einher gehen

Die kompletten Release-Notes zu FreeNAS 9.10 sowie den Download gibt es auf der Webseite des Projekts:

Wer ein neues Gerät mit FreeNAS aufsetzen will, kann dies z.B. auf Basis des beliebten Proliant Microserver Gen8 von HP machen – hier lassen sich bequem vier 3,5″-HDDs unterbringen zusammen mit den 8 Gigabyte RAM, die für FreeNAS 9.x empfohlen werden.

Nginx: ngx_pageespeed aktuell halten

Wer – wie ich auf kadder.de und routerzwang.de – das Nginx-Pagespeed Modul verwendet, sollte dieses auch aktuell halten. Damit kann man sich etliches an Fehlersuche sparen.

Wenn man schon Nginx selbst kompiliert, und das Module „ngx_pagespeed“ verwendet, muss man nicht nur Nginx aktuell halten, was in den letzten Versionen HTTP/2-Support gebracht hat, sondern auch die entsprechende Module. Nachdem ich dies eine zeitlang vernachlässigt habe, konnte ich mich nicht mehr in das WordPress-Backend einloggen. Die dann nötige Fehlersuche sollte anderen erspart bleiben, deswegen hier die wesentlichen Schritte:

cd
NPS_VERSION=1.9.32.10
wget https://github.com/pagespeed/ngx_pagespeed/archive/release-${NPS_VERSION}-beta.zip
unzip release-${NPS_VERSION}-beta.zip
cd ngx_pagespeed-release-${NPS_VERSION}-beta/
wget https://dl.google.com/dl/page-speed/psol/${NPS_VERSION}.tar.gz
tar -xzvf ${NPS_VERSION}.tar.gz

Die jeweils aktuelle Version bekommt man direkt bei Google, am 29.11.2015 war dies Version 1.9.32.10-beta. Nachdem man die oberen Schritte durchgeführt hat, kann man Nginx „regulär“ installieren, wobei man bei der Konfiguration darauf achten muss, auch die neue Version des ngx_pagespeed-Moduls verwendet wird.

Wer also unerklärliche Probleme mit seiner Webseite hat und Nginx 1.9.x mit ngx_pagespeed verwendet, sollte – wie eigentlich bei jeder Software – darauf achten, dass die jeweils aktuelle Version verwendet wird. Durch die einfachen Installationsschritte lässt sich dies einfach erreichen.

Nginx: PHP-Alternative HHVM

Wer in Sachen Ausführungsgeschwindigkeit von PHP-Scripten weitere Optimierungen vornehmen will, stolpert früher oder später über HHVM – ein Just-in-Time-Compiler für PHP.

nginx_logoHHVM kann einfach über die Debian-Paketverwaltung installiert werden. Ist das erledigt, kann es im Prinzip wie php5-fpm verwendet werden. Die ganze restliche Konfiguration innerhalb von Nginx habe ich gelassen – dadurch lassen sich gute Vergleiche in Bezug auf die Performance anstellen:

Pagespeed: WordPress in unter 1s laden (Nginx + HTTP/2)

Wer WordPress richtig schnell haben will, kommt ab einem gewissen Punkt mit gängigen Caching-Plugins nicht weiter. Nginx mit HTTP2 hilft weiter.

Seit der Version 1.9.5 unterstützt auch die Open-Source-Version von Nginx das HTTP/2-Protokoll direkt – eine mühsame Konfiguration bzw. das Verwenden von Patches ist damit nicht mehr nötig.

English Version below

Die HTTP/2-Implementierung läuft – zumindest bezogen auf einen Blog wie diesen – stabil und ohne weitere Auffälligkeiten. Der größte Vorteil: herausragende Seitenladezeiten. Um PHP nicht zu sehr zu fordern, verwende ich Microcaching. Dadurch sind die meisten Seiten bereits fertig erstellt und müssen nur noch an den Client ausgeliefert werden.

Nginx: HTTP/2 über Alpha-Patch verfügbar

HTTP/2 wird von immer mehr Browsern unterstützt, nur bei den Webservern klemmt es teilweise noch. Für Nginx ist nun ein erster Patch erschienen, der das neue Protokoll einbindet.

nginx_logoDafür ist es natürlich zuerst notwendig, dass Nginx selbst kompiliert wird. Ich verwende den aktuellen Mainline-Zweig (derzeit 1.9.4) als Basis, dazu muss noch OpenSSL 1.0.2 installiert sein. Im Nginx-Blog ist ein Beitrag mit dem passenden Patch erschienen.

Der Patch selbst ist recht einfach durchgeführt. Zuerst muss die Patch-Datei heruntergeladen werden:

# wget http://nginx.org/patches/http2/patch.http2.txt

Ist das geschafft, sollte man zuerst einen Testlauf durchführen. Ansonsten kann es auch in einer Testumgebung zu unnützem Zeitaufwand kommen (folgendes im Nginx-Verzeichnis ausführen, ggf. den Pfad zur Patch-Datei anpassen):

# patch -p1 --dry-run < patch.http2.txt

FreeNAS 10 – die wichtigsten Neuerungen

Nach der aktuellen Version 9.3 wird FreeNAS 10 folgen. Mit der kommenden Version wird es auch wieder einige Neuerungen geben, die das kostenlose NAS-Betriebssystem weiter verbessern.

FreeNAS 10 Architektur

FreeNAS 10 Architektur

FreeNAS 10, welches das zweite Milestone-Release (M2) am 06. Juli 2015 hinter sich gebracht hat, wird nicht einfach nur eine Weiterentwicklung des bisherigen FreeNAS 9.x sein, sondern über eine komplett neue Architektur und Struktur verfügen. Die bekannten Features wie das OpenZFS-Dateisystem, die Möglichkeit die Funktionalität mit Plugins zu verbessern.

Wesentliche Neuerungen werden die Benutzeroberfläche betreffen, welche laut den FreeNAS-Entwicklern in Version 10 eher eine Web-App als eine UI sein soll. Durch die Änderungen an der Architektur soll es auch für die FreeNAS-Entwickler leichter werden, das System weiter zu entwickeln, neue Releases werden damit also leichter werden.

FreeNAS: Crashplan 4.3.0 Problemlösung

Wer Crashplan auf FreeNAS als Headless Backup-Maschine benutzt wird in den letzten Tagen bemerkt haben, dass er sich nicht mehr verbinden kann. Hier die Lösung!

Crashplan neigt dazu, mit neuen Updates nicht mehr auf FreeNAS zu funktionieren bzw. die Verbindung zwischen Client und Headless-Crashplan auf der FreeNAS-Maschine (bei mir nach wie vor ein HP ProLiant Microserver) funktioniert nach dem Update nicht mehr.

Ich gehe davon aus, dass das Crashplan-Plugin auf FreeNAS prinzipiell läuft und nur die Verbindung zwischen GUI (der Benutzeroberfläche) und Headless-Crashplan-Service fehlschlägt!

Schritt 0: per SSH in den Crashplan-Jail verbinden

Zuerst wird per SSH eine Verbindung zur FreeNAS-Maschine aufgebaut. Dort mittels jls herausfinden, welche ID das Crashplan-Jail hat (in meinem Fall: 2) und danach mit jexec ID csh verbinden. Man ist nun innerhalb des Crashplan-Jails, alle weiteren Befehle werden dort ausgeführt.

HP Proliant N54L: perfekt für FreeNAS

Wer auf der Suche nach einem System für FreeNAS ist (aktuell ist FreeNAS 9.3.0 erschienen) sollte sich den HP Proliant N54L Microserver einmal genauer anschauen.

Mit 2,2 GHz ist das System immer noch schnell genug, um auch für mehrere Clients mit Daten zu versorgen und die mit Hilfe von ZFS zu verschlüsseln. Vier Festplatteneinschübe bieten genug Platz, um ein großes NAS aufzubauen, die Festplattengröße ist der einzige limitierende Faktor. Das Problem, dass Wake-On-LAN unter FreeNAS mit der Onboard-Netzwerkkarte nicht funktioniert, hat auch der N54L, sodass man eine Intel Netzwerk-Karte mit bestellen sollte. Vier Gigabyte RAM sind ebenfalls etwas knapp, hier sollten es 8 oder gleich 16 Gigabyte sein – zu viel RAM kann ZFS nicht bekommen.

Leider ist der N54L nicht mehr ohne weiteres zu bekommen – abgelöst wurde er von neueren Microserver Gen8, der auf Intel-Basis deutlich mehr Leistung zur Verfügung stellt. Geblieben ist das kleine Gehäuse und die Unterstützung für vier Festplatten. Zusammen mit der aktuellen FreeNAS-Version ergibt sich damit eine gute Alternative zu bekannten Fertig-NAS-Systemen.

Einkaufsliste für HP Proliant N54L & FreeNAS (alles Amazon, Preis vom 09.03.2014):