Linux Server abhärten
Erwartete Lesezeit: 5 minuten
Wie man einen Linux-Server abhärtet: Eine Schritt-für-Schritt-Anleitung
Das Absichern eines Linux-Servers ist ein essenzieller Bestandteil des Server-Managements, um Angriffe zu verhindern und sensible Daten zu schützen. In diesem Artikel führen wir Sie durch die wichtigsten Schritte zur Härtung eines Linux-Servers.
1. Updates und Patches
Stellen Sie sicher, dass Ihr Server auf dem neuesten Stand ist. Sicherheitslücken in Software werden oft durch Updates geschlossen. Verwenden Sie dazu die Paketmanager Ihres Linux-Systems:
sudo apt update && sudo apt upgrade -y # Für Debian/Ubuntu-basierte Systeme sudo yum update -y # Für CentOS/RHEL-basierte Systeme
Erwägen Sie die Einrichtung automatischer Updates:
- Ubuntu: Installieren Sie das Paket
unattended-upgrades
. - CentOS: Nutzen Sie
yum-cron
.
2. SSH absichern
Da SSH häufig das primäre Tor zu einem Server ist, sollte es besonders gesichert werden:
- Port ändern: Verändern Sie den Standardport (22), um automatisierte Angriffe zu reduzieren. Öffnen Sie die Datei
/etc/ssh/sshd_config
und ändern Sie die Zeile:Port 2222 # Beispiel auch nicht sicher, da ein bekannter Alternativport.
- Root-Login deaktivieren:
PermitRootLogin no
- SSH-Schlüssel statt Passwörter verwenden:
PasswordAuthentication no
. Dieses erst setzen , wenn der Login über einen SSH Schlüssel funktioniert.
Generierung von SSH-Schlüsseln auf verschiedenen Betriebssystemen:
- Linux/macOS: Führen Sie den folgenden Befehl im Terminal aus:
ssh-keygen -t rsa -b 4096 -C "Ihr-Email-Adresse"
Speichern Sie den Schlüssel im Standardverzeichnis (z. B.~/.ssh/id_rsa
) und setzen Sie optional ein Passwort. - Windows: Nutzen Sie
ssh-keygen
über PowerShell:ssh-keygen -t rsa -b 4096 -C "Ihr-Email-Adresse"
Alternativ können Sie Tools wie PuTTYgen verwenden, um einen SSH-Schlüssel zu generieren. - Schlüssel auf den Server kopieren: Nutzen Sie
ssh-copy-id
oder kopieren Sie den öffentlichen Schlüssel manuell:ssh-copy-id -i ~/.ssh/id_rsa.pub benutzername@serveradresse
- Fail2Ban einrichten: Dies hilft, brute-force-Angriffe zu blockieren:
sudo apt install fail2ban # Ubuntu/Debian
sudo yum install epel-release && sudo yum install fail2ban # CentOS/RHEL
3. Firewall konfigurieren
Nutzen Sie eine Firewall, um ungewünschte Zugriffe zu blockieren. UFW (Uncomplicated Firewall) ist benutzerfreundlich und effektiv:
sudo apt install ufw sudo ufw default deny incoming sudo ufw default allow outgoing sudo ufw allow 2222/tcp # Erlaubt SSH über den neuen Port sudo ufw enable
Für CentOS/RHEL verwenden Sie firewalld
oder iptables
.
Hier gilt: Immer nur notwendige Ports öffnen.
4. Benutzer- und Berechtigungsmanagement
- Minimieren Sie die Anzahl der Benutzer: Entfernen Sie unnötige Benutzer und Gruppen.
sudo userdel username
- Sichere Passwörter erzwingen: Installieren Sie das Paket
libpam-pwquality
und konfigurieren Sie die Datei/etc/security/pwquality.conf
. - Verwenden Sie die Prinzipien des geringsten Privilegs: Geben Sie Benutzern nur die Rechte, die sie benötigen:
sudo usermod -aG sudo username
5. Dienste und Prozesse minimieren
Deaktivieren Sie nicht benötigte Dienste, um die Angriffsfläche zu reduzieren (aber bitte nicht ssh oder sshd , da Du sonst nicht mehr aufs System kommst , sofern du nicht direkt am Server arbeiten kannst 🙂 ):
sudo systemctl list-unit-files | grep enabled sudo systemctl disable dienstname
6. Logs und Überwachung
System-Logs prüfen: Logs helfen dabei, verdächtige Aktivitäten zu identifizieren.
sudo less /var/log/auth.log # Für Ubuntu/Debian
sudo less /var/log/secure # Für CentOS/RHEL
Automatisierte Überwachung: Verwenden Sie Tools wie Logwatch
, Auditd
oder OSSEC
.
7. Zusätzliche Sicherheitsmaßnahmen
- SELinux aktivieren:
sudo setenforce 1
- Verschlüsselung: Verschlüsseln Sie sensible Daten mit Tools wie
gpg
oderLUKS
. - Backup-Strategie: Regelmäßige Backups sind entscheidend für die Wiederherstellung nach einem Vorfall. Nutzen Sie Tools wie
rsync
oderBorgBackup
.
Fazit
Die Härtung eines Linux-Servers ist ein kontinuierlicher Prozess, der Wachsamkeit und Regelmäßigkeit erfordert. Indem Sie die oben genannten Schritte befolgen, schaffen Sie eine solide Grundlage für die Sicherheit Ihres Servers. Denken Sie daran: Sicherheit ist kein Ziel, sondern eine andauernde Reise.