Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
de:server:security [03.06.2021 12:18] – verschoben nach security:fail2ban admin | de:server:security [09.07.2023 18:10] (aktuell) – admin | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
+ | ====== Server-Sicherheit ====== | ||
+ | Ein Webserver dient dazu, Inhalte einem breiten Publikum verfügbar zu machen. Dies bedeutet zugleich, dass Dritte mit dem Server interagieren. In aller Regel mehrfach täglich (meist automatisierte) Angriffe auf Webserver. Das Ziel ist es dabei, durch die Ausnutzung von Sicherheitslücken an geschützte Daten zu kommen oder den Server für kriminelle Zwecke zu missbrauchen. | ||
+ | |||
+ | Neben Angriffen von Außen werden Sie beim langfristigen Betrieb auch mit Problemen konfrontiert, | ||
+ | |||
+ | Es hat sich bewährt, einen Befragungsserver (welcher oftmals [[: | ||
+ | |||
+ | Um einen sicheren Server-Betrieb zu gewährleisten, | ||
+ | |||
+ | * Sichere Umgebung | ||
+ | * Wahl eines zuverlässigen Hosters bzw. Rechenzentrums (bei einigen Hostern stehen die Server ungeschützt im Flur) | ||
+ | * Verwendung sicherer und unterschiedlicher Passwörter für SSH (hier zusätzlich Keyfile), MySQL, Administrator-Konto in SoSci Survey, Serverüberwachung u.s.w. -- der Einsatz eines Passwort-Managers wie KeePass XC bietet hier große Vorteile. | ||
+ | * Allgemeine Sicherheitsfunktionen | ||
+ | * Firewall (z.B. '' | ||
+ | * Freigabe von Ports 80 und 443 (SMTP-Port 25 nur, wenn der Server auch eingehende Mails verarbeiten muss) | ||
+ | * Restriktive IP-Beschränkung des SSH-Ports 22 | ||
+ | * MySQL-Port 3306 nur durch einen SSH-Tunnel (z.B. via PuTTY) erreichbar | ||
+ | * Malware-Scanner (z.B. '' | ||
+ | * Automatisierte Sicherheitsupdates (z.B. '' | ||
+ | * Zusätzlich wöchentliche oder monatliche Systemupdates | ||
+ | * Absicherung von Teilnahmeschlüsseln (z.B. Teilnahmecodes) gegen Brute-Force-Angriffe ([[de: | ||
+ | * Gängige Verschlüsselung einsetzen bzw. aktivieren | ||
+ | * SSL-Verschlüsslung, | ||
+ | * Data-at-Rest-Verschlüsselung für die Datenbank (MariaDB [[https:// | ||
+ | * Alternativ Verwendung einer verschlüsselten Partition auf dem Server, wenn auch hochgeladene Dateien abgesichert werden müssen (Sicherstellen dass der Server dann nach einem Neustart wieder automatisch anläuft!) | ||
+ | * Datensicherung (verschlüsselt) auf einen Backup-Speicher außerhalb des Servers (z.B. Cloud-Speicher mittels '' | ||
+ | * Tägliches Datenbank-Dump ('' | ||
+ | * Inkrementelles Dateisystem-Backup | ||
+ | * Kryptografische Schlüssel sicher verwahren und testen, ob die Wiederherstellung beider Backups von einem anderen Server aus tatsächlich möglich ist und funktioniert | ||
+ | * Server-Stabilität im Langzeit-Betrieb | ||
+ | * Serverüberwachung (z.B. mit '' | ||
+ | * Automatisierter Server-Neustart (z.B. einmal pro Woche oder pro Monat) |