Linux Server Absichern Anleitung
Linux Server absichern: Komplette Anleitung
Ein ungesicherter Server ist ein leichtes Ziel für Angreifer. In dieser Anleitung zeigen wir die wichtigsten Maßnahmen, um Ihren Linux Server (Ubuntu/Debian) abzusichern.
1. System aktuell halten
Updates installieren
# Paketlisten aktualisieren sudo apt update # Alle Pakete upgraden sudo apt upgrade -y # Sicherheitsupdates automatisch installieren sudo apt install unattended-upgrades sudo dpkg-reconfigure unattended-upgrades
2. SSH absichern
SSH ist das Haupteinfallstor für Angreifer. Diese Einstellungen sind Pflicht:
SSH-Konfiguration anpassen
sudo nano /etc/ssh/sshd_config
Folgende Einstellungen ändern:
# Port ändern (nicht 22) Port 2222 # Root-Login verbieten PermitRootLogin no # Nur SSH-Keys erlauben (Passwort deaktivieren) PasswordAuthentication no PubkeyAuthentication yes # Leere Passwörter verbieten PermitEmptyPasswords no # Anzahl Versuche begrenzen MaxAuthTries 3 # Timeout setzen ClientAliveInterval 300 ClientAliveCountMax 2
SSH-Key erstellen (auf Ihrem PC)
# Key generieren ssh-keygen -t ed25519 -C "your@email.com" # Key auf Server kopieren ssh-copy-id -p 22 user@server-ip
SSH neu starten
sudo systemctl restart sshd
⚠️ Wichtig:
Testen Sie die SSH-Verbindung in einem neuen Terminal BEVOR Sie die alte Verbindung schließen!
3. Firewall einrichten (UFW)
# UFW installieren sudo apt install ufw # Standardregeln sudo ufw default deny incoming sudo ufw default allow outgoing # SSH erlauben (Ihren Port verwenden!) sudo ufw allow 2222/tcp # Webserver erlauben sudo ufw allow 80/tcp sudo ufw allow 443/tcp # Firewall aktivieren sudo ufw enable # Status prüfen sudo ufw status verbose
4. Fail2Ban installieren
Fail2Ban sperrt IPs nach zu vielen fehlgeschlagenen Login-Versuchen.
# Installieren sudo apt install fail2ban # Konfiguration kopieren sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local sudo nano /etc/fail2ban/jail.local
Einstellungen anpassen:
[DEFAULT] bantime = 1h findtime = 10m maxretry = 5 [sshd] enabled = true port = 2222 filter = sshd logpath = /var/log/auth.log maxretry = 3
# Fail2Ban starten sudo systemctl enable fail2ban sudo systemctl start fail2ban # Status prüfen sudo fail2ban-client status sshd
5. Benutzer absichern
Neuen Sudo-Benutzer erstellen
# Neuen Benutzer anlegen sudo adduser meinuser # Zur sudo-Gruppe hinzufügen sudo usermod -aG sudo meinuser # Testen su - meinuser sudo whoami # Sollte "root" ausgeben
Root-Account deaktivieren
sudo passwd -l root
6. Weitere Sicherheitsmaßnahmen
Unnötige Dienste deaktivieren
# Laufende Dienste anzeigen sudo systemctl list-units --type=service --state=running # Dienst deaktivieren sudo systemctl disable --now DIENSTNAME
Offene Ports prüfen
sudo ss -tulpn # oder sudo netstat -tulpn
Rootkits scannen
sudo apt install rkhunter chkrootkit sudo rkhunter --check sudo chkrootkit
Sicherheits-Checkliste
| Maßnahme | Priorität | Status |
|---|---|---|
| System Updates | 🔴 Hoch | ☐ |
| SSH-Port ändern | 🔴 Hoch | ☐ |
| SSH-Keys statt Passwort | 🔴 Hoch | ☐ |
| Root-Login deaktivieren | 🔴 Hoch | ☐ |
| Firewall (UFW) | 🔴 Hoch | ☐ |
| Fail2Ban | 🟡 Mittel | ☐ |
| Automatische Updates | 🟡 Mittel | ☐ |
| Rootkit-Scanner | 🟢 Optional | ☐ |
💡 Tipp:
Mit Enjyn Server Monitor überwachen Sie Ihre Server kostenlos und werden bei Ausfällen sofort benachrichtigt.