Alle Domains aller Zertifikate aller virtual hosts auflisten

Bei vielen konfigurierten virtual hosts (vhosts) kann man irgendwann die Übersicht verlieren vie viele Zertifikate und – im Fall von SAN Zertifikaten – wie viele Domains dort konfiguriert sind.

Das folgende Script erledigt diese Aufgabe für nginx, kann jedoch auch einfach für apache umgeschrieben werden.

Continue reading Alle Domains aller Zertifikate aller virtual hosts auflisten

SFTP-Server

FTP ist historisch bedingt ein sehr fragiles Protokoll, welches grosse Mühe hat mit heute gängigen Techniken wie NAT und Firewalls klar zukommen.
Es sollte eigentlich nicht mehr verwendet- und stattdessen auf SFTP (FTP über SSH) umgestellt werden.

Das hat u.a. auch den Vorteil, dass man keinen extra Server mehr laufen lassen muss.

In diesem Tutorial wird erklärt wie man einem SFTP-Server aufsetzt.

Continue reading SFTP-Server

Kalender auslesen mit python

Wen man seinen Kalender auf einem CalDAV-Server (z.B. mittels NextCloud) hat, lässt sich dieser via python einfach auslesen.

Dies ergibt interessante Anwendungen; so könnte man beispielsweise einen Ferienkalender erstellen und dann mittels einem python Script Aktionen auslösen, welche nur bei an- oder Abwesenheit erfolgen sollen

Continue reading Kalender auslesen mit python

Ansible: mode für Dateien und Verzeichnisse anders setzen

Bei vielen ansible Modulen gibt es den „mode“ Paramater, mit welchem man die Berechtigung für Verzeichnisse und Dateien setzen kann. Man kann jedoch nur einen Modus angeben, d.h. setzt man diesen beispielsweise auf: 0755 werden die Verzeichnisse world readable, jedoch auch alle Dateien world executable.

Will man dies verhindern kann man anstelle eines kleinen x ein grosses X setzen, das gilt dann nur für Verzeichnisse:

Continue reading Ansible: mode für Dateien und Verzeichnisse anders setzen

nginx: Location Pfad mit default redirect

Möchte man in nginx innerhalb einer Domain für einen Pfad einen neuen DocumentRoot definieren (z.B. für /app) und darin jede nicht existierende Datei auf index.html weiterleiten, geht dies mittels:

location /app {
  alias /srv/example.org/app;
  try_files $uri $uri/ /index.html =404;
}

Das selbe mit index.php unter Beibehaltung der Parameter:

location /app {
  alias /srv/example.org/app;
  try_files $uri $uri/ /index.php?$args =404;
}

Volles Beispiel:

server {
  listen 80;
  server_name example.org www.example.org;
  access_log /srv/example.org/logs/access_log;
  error_log /srv/example.org/logs/error_log;
 
  location /app {
    alias /srv/example.org/app;
    try_files $uri $uri/ /index.html =404;
  }
}

Spammer aus der Mailqueue entfernen

Manchmal passiert es, dass eine Webseite- oder das Passwort eines Mailserver-Benutzers gehackt wird.
In der Folge steigt die mail queue auf dem Server rasant an.

In einem solchen Fall ist sehr rasches eingreifen des Administrators gefragt, denn nicht selten sendet der Server so innert wenigen Stunden Zehntausende Spam-Mails raus und die IP-Adresse des Servers landet auf diversen blacklisten, aus die man zum Teil nur sehr schwierig wieder herauskommt.

Zumindest die Mails, welche noch in der Mailqueue sind, kann man aber so entfernen, bevor dieser ebenfalls herausgeschickt werden.

Continue reading Spammer aus der Mailqueue entfernen