Server-Notfallprogramm für unterwegs

… oder: Krisenmanagement für arme Admins. Für ganz, ganz Arme.

Am Mittwoch geht es für mich auf zum diesjährigen Summer Breeze Metal Open Air in Dinkelsbühl. Das bedeutet leider nicht nur Genuss für meine Ohren, sondern auch Stress: Der Admin in mir macht sich Gedanken, ob denn auch alle Server ohne Störungen über die Festivalzeit kommen werden. Unterwegs habe ich nur mein Smartphone mit einer wackeligen Mobilfunkverbindung. Darauf ist ein SSH-Client installiert, der mir Zugriff auf meine Server erlaubt. Und weil mir alleine der Gedanke daran schon weh tut, root-Login darauf zu ermöglichen, kann sich das Smartphone nur als normaler Benutzer zum Server verbinden. Via Publickey-Auth, versteht sich.

Nun stehe ich allerdings vor dem Problem, dass ja ein normaler Benutzer keine Dienste neu starten kann, weil ihm die Rechte dazu fehlen. Möglicherweise werde ich beispielsweise meinen XMPP-Server einmal neu starten müssen, weil die zuletzt getroffenen Maßnahmen nicht gewirkt haben und er wieder einmal keine Logins mehr zulässt. Ein „systemctl restart prosody“ ist mit diesem Account nicht möglich. Nun könnte man mit sudo arbeiten und die Ausführung des Kommandos speziell für diesen User erlauben. Meine Debian-Server kommen allerdings ohne sudo und das soll auch so bleiben. Also kein sudo für mich.

Weiterlesen ›


mod_userstats für Prosody zeigt aktuelle Nutzerzahlen

Für den XMPP-Server Prosody habe ich gestern ein kleines Modul „mod_userstats“ entwickelt, welches Zahlen zu den aktuell registrierten Nutzern und den gerade angemeldeten Nutzern zur Verfügung stellen kann. Die Nutzerzahlen können über XMPP Adhoc-Kommandos und eine HTTP JSON-Schnittstelle abgerufen werden. Vor allem über letztere kann man die aktuellen Zahlen sehr einfach auf einer Website darstellen.

Mit dem Modul ist es mir möglich, nicht nur die Zahl der registrierten Nutzer, sondern endlich auch die Zahl der eingeloggten User unter https://trashserver.net/xmpp/userstats/ anzuzeigen.

Wer auch eine solche Übersicht basteln will, kann sich das Modul auf GitHub herunterladen: https://github.com/ThomasLeister/prosody_mod_userstats. Sollte das Plugin bei mehreren Usern gut funktionieren, werde ich es in das offizielle Prosody Modul-Repository aufnehmen lassen, sodass es vielleicht eine größere Verbreitung erreichen wird. Rückmeldung dazu wäre hilfreich.


Empfehlung: Static Site Generator „Hugo“

Die HTML-Seiten für meine trashserver.net Microsite verwalte ich nicht über ein dynamisches CMS, sondern über einen Static Site Generator. Damit erzeuge ich die statischen HTML-Dateien lokal auf dem Rechner und synchronisiere Änderungen an der Website via rsync auf den Webserver. Das hat für mich den großen Vorteil, dass ich mich nicht um Sicherheitsupdates kümmern muss. Die Microsite ändert sich sowieso nicht oft – da ist ein solcher Generator genau das richtige.

Bisher habe ich dafür den beliebten Ruby-basierten Generator „Jekyll“ genutzt. Allerdings bin ich kein Ruby-Fan, würde mir die zusätzlichen Pakete auf dem Rechner lieber sparen, und mit dem Templating bin ich auch nicht so gut zurecht gekommen. Deshalb habe ich mich gestern nach einer Alternative umgesehen, die mir besser liegt und bin mit „Hugo“ fündig geworden. Der Generator ist in Go entwickelt, was bedeutet, dass man ihn als Binärpaket installieren kann und auf Abhängigkeiten keine Rücksicht nehmen muss. Einfach das Binary in /usr/local/bin schieben – fertig.

Als Template-Engine wird die Go-eigene HTML-Engine verwendet, welche mir gut gefällt. Nach etwas Einarbeitung war ich schnell in der Lage, ein eigenes Template zu erstellen. Ein Feature, das mir besondes gut gefällt, ist die automatische Seitenaktualisierung. Hugo kommt mit einem eigenen, kleinen Webserver, den man z.B. für die Entwicklung von eigenen Themes nutzen kann. In die generierten HTML-Dateien wird automatisch etwas JavaScript eingefügt, welches dafür sorgt, dass die Seiten neu gerendert werden, sobald in zugehörigen Markdown- oder HTML-Dateien etwas geändert wurde. So kann man in einem Setup mit zwei Bildschirmen am einen Display programmieren, während das andere die Änderungen an der Seite live im Webbrowser zeigt.

Wenn ihr euch eine Microsite betreut, probiert Hugo doch mal aus!


Keybase Invites zu vergeben

Inzwischen kann ich wieder einige Keybase.io -Einladungen vergeben. Bekannte und ich selbst haben eine Menge Einladungslinks zugeteilt bekommen, die wir gerne vergeben würden. Bei Interesse einfach hier mit E-Mail Adresse kommentieren. Ihr bekommt dann von mir oder jemand anderem eine Einladung zugeschickt und könnt euch Keybase.io mal ansehen. Aktuell warten übrigens mehr als 25.000 User auf Zugang zu Keybase.io – mit einer Einladung kommt ihr ohne Wartezeit rein.

Einladungen verfügbar

Für alle, die Keybase.io nicht kennen: Mit diesem Webservice können PGP-Keys mit Online-Identitäten verknüpft werden, sodass sofort klar ist, welcher Public Key zu welchem Benutzer gehört. Außerdem können über die Keybase.io Software Nachrichten und Dateien komfortabel verschlüsselt werden.


Facebook vs. Adblocker – Wäre Zahlen nicht die bessere Lösung?

Derstandard.at: Facebook vs. Adblocker: Streit um Werbung eskaliert

Mal eine andere Idee: Facebook, lasst doch das mit der Werbung einfach bleiben und lasst euch eure Dienste zahlen. Dann …

  1. seid ihr nicht mehr abhängig von Werbetreibenden
  2. habt weniger Stress mit Datenschutz + könnt gewaltig Ressourcen für die Auswertung einsparen
  3. könnt euch auf das Wesentliche konzentrieren

Oder ihr bietet einfach ein Werbe- und Dritt-Tracking-freies Facebook gegen eine kleine Gebühr an. Um die 1 € im Monat kann sich jeder leisten, und das ist allemal besser als 0 €, die mit Werbetracker reinkommen. Ich frage mich sowieso, wieso das noch nicht angeboten wird. Das mag jetzt naiv klingen, aber als CEO hätte ich das schon lange eingeführt. Werbe-Facebook für alle, die aus Gründen nicht einmal 1 € / Monat aufbringen können – für alle anderen ein Werbe-freies Facebook, das ohne Ablenkung und Ärger genutzt werden kann. Wenn das Netzwerk tatsächlich gut ist und etwas für meine Privatsphäre tut, wäre mir das ein Abo wert. Dann könnten wir auch über Beträge > 1 € / Monat sprechen.

Ich finde das schon ein bisschen merkwürdig: In der Fußgängerzone kaufen wir die nutzlosesten Dinge für eine Menge Geld. Aber online ist zahlen irgendwie total verpöhnt. Hm. Wenn mir jemand online einen wirklich guten Dienst anbietet, dann kann man doch auch dafür zahlen? Dienstleistung ist Dienstleistung.

Gut – das Modell lässt sich nicht so einfach auf das ganze Web übertragen. Sonst hätten wir nur noch Paywalls und man müsste alle paar Minuten irgendwo Münzen einwerfen. Aber für so große und zentrale Dienste wie z.,B. ein soziales Netzwerk oder einen E-Mail-Provider wäre das doch denkbar, oder nicht? Ja – solche Provider gibt es schon. Man kann für E-Mail und soziales Netzwerk auch zahlen. Aber irgendwie dümpeln diese Dienste nahe der Bedeutungslosigkeit herum.

Eigentlich schade. Müssten wir nicht alles mit Werbung zupflastern, wären wir weniger abgelenkt, hätten wegen nicht getätigter Spontankäufe u.U. am Ende sogar mehr in der Tasche und die Datenschutz-Sache wäre auch nicht mehr so schlimm, wie sie jetzt ist. Vllt sollten wir alle mal darüber nachdenken, ob wir online nicht ähnlich konsumieren sollten, wie offline.

 

Ergänzung: Jetzt habe ich mal weiter nachgedacht und mir ist folgender Gedanke gekommen: Kann es sein, dass Werbung, wie wir sie jetzt haben, das Web vielleicht sogar dezentralisiert? Angenommen, wir hätten mehr Paywalls … dann würden die Nutzer tendentiell eher eine Website aufrufen, für die sie schon zahlen, als eine Site, die erst noch bezahlt werden muss. Große Portale würden sich dann durchsetzen und es würde zu einer Monopolisierung kommen. Und klar – wir würden evtl. unsere Filterblase verstärken, weil wir nur noch in der „bezahlten Umgebung“ unterwegs wären. Hm. Gar nicht so einfach, das Thema.


Linux-Distribution Solus

Durch die Webserie „Lunduke & Whatnot“ von Bryan Lunduke bin ich auf Solus aufmerksam geworden – eine Linux-Distribution, die mal wieder alles besser machen will … ;-) Was man aber tatsächlich hervorheben sollte, ist die Tatsache, dass Solus nicht auf einer bereits vorhandenen Distribution wie z.B. Ubuntu aufbaut, sondern „from Scratch“ komplett eigenständig aufgebaut wurde. Das bringt zwar mehr Aufwand mit sich, aber gleichzeitig holt man sich weniger Abhängigkeitsprobleme und Altlasten mit ins Haus. Was die anderen Eigenschaften und Alleinstellungsmerkmale (?) von Solus angeht, informiert ihr euch am besten auf dieser Seite: https://solus-project.com/technical-specifications/

Bemerkenswert finde ich außerdem die beeindruckende Boot- und Shutdown-Zeit. Da wurde offenbar viel Zeit in die Optimierung gesteckt. Solus habe ich noch nicht aufgiebig getestet, aber was ich bisher durch eine Installation in einer VM erfahren habe, gefällt mir ziemlich gut. Das System wirkt wie aus einem Guss und funktioniert, wie man sich das vorstellt. Nur mit einer Sache konnte ich mich bisher noch nicht so sehr anfreunden: Mit dem Desktopmanager „Budgie“. Sieht zwar ganz schick aus, aber ich vermisse eine übersichtlichere Fensteranzeige. In der Fensterleiste oben werden nur kleine Programmsymbole eingeblendet, aber keine Fenstertitel. Das macht das Arbeiten mit vielen Fenster nicht gerade einfach. Bisher konnte ich keine Einstellung finden, die die Fenstertitel einblendet oder eine Vorschau anzeigt. Wenn jemand diesbezüglich einen Tipp für mich hat, schreibt mir gerne. ;-) Update: Habe es selbst herausgefunden. In den Budgie-Einstellungen wird die „Icon Task List“ einfach durch eine „Task List“ ersetzt.

Ansonsten bleibt mir nur zu sagen: Sieht interessant aus und hat Potenzial. Ich werde das mal weiter beobachten.


Schlösser knacken ist angesagt

VirtualBox unter Fedora 24: Kernelmodule für SecureBoot signieren

VirtualBox nutze ich wegen der relativ guten Grafikperformance gerne für meine Windows-VM unter Fedora 24. Bei ersten Start schlug mir eine Fehlermeldung entgegen: Das notwendige „vboxdrv“-Kernelmodul sei noch nicht geladen, daher könne die VM nicht gestartet werden. Gut – das lässt sich ja lösen:

sudo modprobe vbxdrv

… doch damit war es nicht getan: Das Modul ließ sich nicht in den Kernel einbinden, weil es für das aktive SecureBoot nicht mit einem passenden MOK (Machine Owner Key) signiert worden war. Andere geladene Kernelmodule sind bereits von Fedora signiert – bei den VirtualBox Modulen war das nicht der Fall. Warum das so ist, konnte ich noch nicht herausfinden. (=>siehe Notiz unten)

modprobe: ERROR: could not insert 'vboxdrv': Required key not available

Es gibt drei Möglichkeiten, das Problem zu beheben:

Weiterlesen ›