Übersetzungen dieser Seite:
 

Dies ist eine alte Version des Dokuments!


Server-Sicherheit

Dieses Kapitel erklärt einige für die Sicherheit des Servers empfehlenswerte Konfigurations-Einstellungen.

fail2ban

Für den Zugriff auf laufende Interviews wird jedem Interview ein „Token“ zugeteilt, eine 12-stellige alphanumerische Zeichenfolge. Wer das Interview-Token kennt, kann das Interview fortführen und ggf. mit dem Zurück-Knopf auch eingegebene Daten einsehen.

Damit man gültige Tokens nicht einfach durch Ausprobieren (brute force) ermitteln kann, sollte der Server IP-Adressen sperren, wenn diese ungültige Tokens verwenden. Dafür speichert SoSci Survey ungültige Eingaben in der Datei system/logfiles/token-fail.log. Auch ungültige Seriennummern und Serienmail-Schlüssel werden in dieser Datei vermerkt.

Auf Linux-Systemen kann man IP-Adressen, die in dieser Liste häufiger auftauchen, mittels fail2ban vorübergehend sperren. Auf Debian-basierten Systemen kann man fail2ban wie folgt installieren:

  sudo apt-get install fail2ban

Zunächst muss eine Datei /etc/fail2ban/filter.d/serial-fail.conf mit folgendem Inhalt angelegt werden.

[Definition]
failregex = <HOST>\s+(invalid|serial|deliveryToken|session\.id)
ignoreregex =

Anschließend muss die Datei /etc/fail2ban/jail.local angelegt oder (falls schon vorhanden) ein Abschnitt [serial-fail] einfügt werden, welcher auf die Logdatei mit den ungültigen Einträgen verweist:

[DEFAULT]
ignoreip = 127.0.0.1/8
maxretry = 3
banaction = iptables-multiport

[serial-fail]
enabled  = true 
port     = http,https
filter   = serial-fail
action   = iptables-allports
           mail-whois[name=Serial Fail, dest=IHRE@E-MAIL-ADRESSE]
logpath  = /PFAD_ZU_SOSCI/system/logfiles/token-fail.log
maxretry = 50
bantime  = 7200
# SoSci Survey will lock IPs by itself, this is just the uppermost limit

[sshd-ddos]
enabled = true

[php-url-fopen]
enabled = true

Dieser Eintrag sperrt eine IP-Adresse für 5 Minuten (`bantime`), wenn von dieser binnen 10 Minuten (Standardeinstellung für `findtime`) 10 fehlerhafte Eingaben (`maxretry`) gemacht wurden.

Der Pfad /var/www/html/sosci/ muss dabei an das Installationsverzeichnis von SoSci Survey angepasst werden. Laden Sie die Konfiguration und überprüfen Sie, ob alles funktioniert:

  sudo fail2ban-client reload
  sudo fail2ban-client status

Die Ausgabe sieht z.B. wie folgt aus:

Status
|- Number of jail:      3
`- Jail list:   serial-fail, sshd, sshd-ddos
de/server/security.1568541517.txt.gz · Zuletzt geändert: 15.09.2019 11:58 von admin
 
Falls nicht anders bezeichnet, ist der Inhalt dieses Wikis unter der folgenden Lizenz veröffentlicht: CC Attribution-Share Alike 4.0 International
Driven by DokuWiki