Preview Generator

JuralMin / Pixabay

Wenn man wie ich viele Bilder in der Nextcloud ablegt, ist die Vorschau oft recht zäh. Abhilfe schafft hier eine Nextcloud App namens Preview Generator. Da Vorschaubilder per Standard nur bei Bedarf erstellet werden, kommt es zu leider unschönen Wartezeiten. Ist jedoch der Preview Generator installiert und ein entsprechender Cronjob eingerichtet werden diese Wartezeiten minimiert.

Ich habe im Beispiel diesen auf 15 Minuten eingestellt. Man öffnet den Crontab

und fügt folgende Zeile am Ende hinzu:

Hintergrund-Aufgaben der Nextcloud auf Cron umstellen

Larisa-K / Pixabay

Man kann die Performance der Nextcloud noch etwas erhöhen indem man die Hintergrund-Aufgaben von Ajax (Eine Aufgabe bei jedem Laden einer Seite ausführen) auf Cron umstellt. Dazu erzeugt man für den Systemnutzer „www-data“ einen Cronjob.

Hierzu wird

eingegeben und die folgende Zeile ans Ende der Datei gesetzt. Hier bitte den Pfad entsprechend an die Installation anpassen.

Dann mit Ctrl + o speichern und den Editor mit Ctrl + x verlassen. Anschließend werden in den Einstellungen der Nextcloud über Grundeinstellungen die Hauptaufgaben auf Cron umgestellt. Der Cronjob wird nun alle 15 Minuten ausgeführt und trägt zur Leistungsverbesserung der Cloud bei.

Nextcloud
Umstellung auf System-Cron-Service

Viel Spaß!

Kein Abgleich der IP über ddclient

mohamed_hassan / Pixabay

Falls ddclient nicht mehr die IP-Adresse mit dem entsprechenden DynDNS-Anbieter abgleicht, kann das Stoppen des Dienstes und der Neustart mit der Option –force eventuell helfen:

Siehe hierzu auch: https://intux.de/2016/04/raspberry-pi-3-mit-dyndns/

WordPress-Verzeichnis wp-admin absichern

pixelcreatures / Pixabay

Viele Jahre habe habe ich mein Backend von WordPress so abgesichert, dass auffällige IP-Adressen nach drei gescheiterten Login-Versuchen für eine gewisse Zeit keinen Zugang mehr zum Verzeichnis wp-admin bekamen. Da  auf meinem Server schon lange keine IP-Adressen mehr geloggt werden, ist diese Methode nicht mehr praktikabel. 

Aus diesem Grund habe ich nach einer Alternative gesucht. Ganz zufrieden bin ich damit das Login-Verzeichnis via Benutzername und Passwort zu schützen. Ein weiterer Vorteil ist, dass ich ein weiteres Plugin aus meiner überladenen WordPress-Installation entfernen kann.

Verzeichnisschutz WordPress
Verzeichnisschutz

Installation

Zuerst wird via

im Hauptverzeichnis der WordPress-Installation eine versteckte Datei .htpasswd angelegt.

Mit dem htpasswd Generator ist es möglich den Inhalt der .htpasswd zu erstellen. Hierbei wählt man einen Benutzernamen und ein starkes Passwort. Die entsprechende Ausgabe trägt man nun in die .htpasswd ein und spreichert mit Ctrt + o.

.htpasswd
Beispiel .htpasswd

Nach dem Verlassen des Editors mit Ctrt + x öffnet man wiederum mit Nano

die .htaccess und fügt folgende Zeilen hinzu.


Dabei muss auch hier der Pfad der .htpasswd entsprechend angepasst werden. Wenn man nun die Seite https://domain.tld/wp-admin aufruft sollte der Zugang zum Login nur über die Eingabe von dem zuvor ausgewählten Benutzernamen und dem entsprechenden Passwort möglich sein.

Viel Spaß!

XEP-0368 auf dem Prosody XMPP-Server

Letztes Wochenende hatte ich den ComplianceTester von Daniel Gultsch durchlaufen lassen und gesehen, dass enige XMPP-Erweiterungen (XEP) nicht aktiviert waren. Die größten Probleme hatte ich bei der Suche nach einer Lösung zur Aktivierung von XEP-0368. Schlußendlich half mir die Anleitung von Dominion auf adminforge.de.

Hier meine Änderungen am XMPP-Server intux.de:

Zuerst wurde sslh installiert.

An dieser Stelle wurde ein „eigenständiger Server“ ausgewählt.

Dann musste die Datei /etc/apache2/ports.conf (Apache2) mit

von 

in

geändert werden. Im Anschluss wurde in die /etc/prosody/prosody.cfg.lua (Prosody) mit 

die Zeile 

eingefügt. In der /etc/default/sslh musste via

der Eintrag

gesetzt werden. Die vorhandene DEAMON_OPTS kommentierte ich aus und fügte

darunter ein. Nun musste das Verzeichnis /etc/sslh/ erstellt werden.

Dann wurde eine /etc/sslh/sslh.cfg mit folgendem Inhalt via

erstellt. Die Dienste Prosody, Apache2 und sslh wurden im Anschluss neu gestartet.

Ob die IPs und Ports richtig konfiguriert sind, zeigte die Ausgabe von:

Die Records für den XMPP-Server wurden wie folgt gesetzt.

Records
Records des XMPP-Servers

Abschließend konnte ich via openssl erfolgreich die HTTPS-Vervindung testen.

Der Status zum XMPP-Server intux.de kann man hier abfragen.

SSH mit Google Authenticator absichern

heladodementa / Pixabay

Vor einem Jahr, zur damaligen CeBIT, nahm ich an einem sehr interessanten Vortrag zur Absicherung von Diensten, wie der ownCloud via Zwei-Faktor-Authentifizierung, im Open Source Forum teil. Seit dieser Zeit setze ich immer häufiger den Google Authenticator ein. So waren die ersten Dienste die dahingehend abgesichert wurden WordPress, Nextcloud und mein Google-Konto.

Bei den diesjährigen Chemnitzer Linux Tagen konnte ich einem Vortrag „Linux-Server absichern“ lauschen. Auch hier wurde u.a. über die Problematik Zwei-Faktor-Authentifizierung referiert. Was mich dazu bewogen hat den SSH-Zugang meines vServers mit dem Authenticator zu schützen. Auf meinem Server läuft ein Debain 9 als Betriebssystem.

Dazu installiert man folgende Pakete

und aktiviert den Google Authenticator wie folgt:

Nun kann der QR-Code entsprechend gescannt oder der „secret key“ per Hand eingegeben werden. Die entsprechenden Backup-Codes sind zu sicher. Die nachfolgenden Fragen werden wie beschrieben beantwortet.

Do you want me to update your „/root/.google_authenticator“ file (y/n) y

Do you want to disallow multiple uses of the same authentication
token? This restricts you to one login about every 30s, but it increases
your chances to notice or even prevent man-in-the-middle attacks (y/n) Do you want to disallow multiple uses of the same authentication
token? This restricts you to one login about every 30s, but it increases
your chances to notice or even prevent man-in-the-middle attacks (y/n) y

By default, tokens are good for 30 seconds. In order to compensate for
possible time-skew between the client and the server, we allow an extra
token before and after the current time. If you experience problems with
poor time synchronization, you can increase the window from its default
size of +-1min (window size of 3) to about +-4min (window size of
17 acceptable tokens).
Do you want to do so? (y/n) n

If the computer that you are logging into isn’t hardened against brute-force
login attempts, you can enable rate-limiting for the authentication module.
By default, this limits attackers to no more than 3 login attempts every 30s.
Do you want to enable rate-limiting (y/n) y

Nun wird mit dem Editor 

dieser Eintrag ans Ende gesetzt.

„nullok“ sorgt dafür, dass nur der SSH-Zugang für root abgesichert wird. Andere eingerichtete User bleiben hier außen vor.

Weiterhin wird der vorhandene Eintrag in

auf

gesetzt und der SSH-Service neu gestartet.

Schließt bitte nicht den SSH-Zugang! Testet in einem weiteren Terminal, ob alles funktioniert. Nicht, dass Ihr Euch versehentlich aussperrt. Ein vorheriges Backup des Servers setze ich natürlich voraus.

Google Authenticator
Google Authenticator App

Nachtrag

Übrigens wird Filezilla via SFTP nun den Zugang verweigern. Hier setzt Ihr die Verbindungsart auf Interaktiv.

Viel Spaß!

searx.intux.de

Seit Ende letzten Jahres habe ich auf meinem Server die Metasuchmaschine Searx searx.intux.de laufen. Diese habe ich in Docker neben meiner Mailcow installiert. Was mich bei der Installationsanleitung gestört hat, dass man hierbei keinen Service für den Dienst berücksichtigt hat. Nach einem Reboot des Servers wäre also die Suchmaschine offline.

Searx
Metasuchmaschine Searx

Dies konnte ich nun in meinem Fall umgehen, indem ich Searx folgendermaßen gestartet habe.

Viel Spaß!

Mailcow Dockerized Postfach sichern

Ob es nun die eleganteste Lösung ist sein Postfach so zu sichern, sei einmal dahin gestellt. Ich habe nach einem Weg gesucht und mich hierfür entschieden.

Dazu wurde ein Script /root/MailBoxscript.sh

mit folgendem Inhalt erstellt

und

ausführbar gemacht. Weiterhin wurde ein Crontab angelegt.

Hier habe ich am Ende 

eingetragen, um die Sicherung drei Uhr morgens auszuführen. Zum Schluss startet man den Dienst Cron neu.

Servercow – Image mounten

Regelmäßig sichere ich die Snapshots meines vServers, welcher auf Servercow läuft auf meinem lokalen Rechner. Um diese Images jedoch in Debian zu mounten, muss die Startposition des Images angeben werden.

Im Beispiel wird diese wie folgt abgefragt:

Nun wird der Mountbefehl entsprechend angepasst und das Image ins Dateisystem eingebunden.

Searx in Docker

Inspiriert durch Martins Artikel „Searx auf Uberspace einrichten“ habe ich mich nun auch an der Metasuchmaschine Searx versucht. Da es mit der aktuellen Installationsanleitung aber unter Debian Stretch aktuell Probleme gibt, habe ich mich für die Docker-Variante entschieden. Hierzu wurde Searx hinter einen Reverse Proxy auf dem Apache2 meines Servers gepackt. 

Searx läuft auf dem Port 8888 (http://5.1.76.25:8888/). Der Reverse Proxy leitet nun die über https://searx.cybt.de (Port 443) eingehende Anfrage auf den Port 8888 des Servers um.

Der Reverse Proxy wurde als VirtualHost in /etc/apache2/sites-available/proxy.conf angelegt und sieht in meinem Fall so aus:

Damit das alles auch funktioniert, müssen die entsprechenden Module aktiviert sein. Hier die Ausgabe zu meinem Apache2 der HTTPS für die entsprechende URL erzwingt.