Vollständiger VPS-Sicherheitshärtungsleitfaden
TUTORIAL 8 min read fordnox

Vollständiger VPS-Sicherheitshärtungsleitfaden

Schritt-für-Schritt-Anleitung zur Absicherung Ihres VPS. Behandelt SSH-Härtung, Firewalls, Fail2Ban, automatische Updates und grundlegende Sicherheitspraktiken zum Schutz Ihres Servers.


Vollständiger VPS-Sicherheitshärtungsleitfaden

Ihr VPS ist rund um die Uhr dem Internet ausgesetzt. Ohne angemessene Sicherheitsmaßnahmen ist es nur eine Frage der Zeit, bis jemand ihn kompromittiert. Dieser Leitfaden deckt alles ab, was Sie benötigen, um Ihren Server abzusichern.

Warum das wichtig ist

Jede Minute scannen automatisierte Bots das Internet nach anfälligen Servern. Ein frischer VPS kann innerhalb weniger Stunden nach seiner Erstellung Tausende von Anmeldeversuchen erhalten. Angemessene Sicherheit ist keine Option – sie ist der Unterschied zwischen einem zuverlässigen Server und einem Teil eines Botnetzes.

Was auf dem Spiel steht:

Voraussetzungen

Schritt 1: System aktualisieren

Aktualisieren Sie vor allem anderen alle Pakete:

# Ubuntu/Debian
sudo apt update && sudo apt upgrade -y

# CentOS/RHEL
sudo dnf update -y

Aktivieren Sie automatische Sicherheitsupdates:

# Ubuntu/Debian
sudo apt install unattended-upgrades -y
sudo dpkg-reconfigure -plow unattended-upgrades

Schritt 2: Einen Nicht-Root-Benutzer erstellen

Verwenden Sie root niemals für den täglichen Betrieb:

# Create new user
adduser deploy

# Add to sudo group
usermod -aG sudo deploy

# Switch to new user
su - deploy

Schritt 3: SSH-Sicherheit konfigurieren

Bearbeiten Sie Ihre SSH-Konfiguration:

sudo nano /etc/ssh/sshd_config

Wenden Sie diese Einstellungen an:

# Disable root login
PermitRootLogin no

# Disable password authentication (after setting up keys!)
PasswordAuthentication no

# Change default port (optional but recommended)
Port 2222

# Limit login attempts
MaxAuthTries 3

# Set login timeout
LoginGraceTime 60

# Disable empty passwords
PermitEmptyPasswords no

# Disable X11 forwarding if not needed
X11Forwarding no

Richten Sie die SSH-Schlüsselauthentifizierung ein, BEVOR Sie Passwörter deaktivieren:

# On your LOCAL machine, generate a key
ssh-keygen -t ed25519 -C "your-email@example.com"

# Copy to server
ssh-copy-id -i ~/.ssh/id_ed25519.pub deploy@your-server-ip

SSH neu starten:

sudo systemctl restart sshd

Testen Sie Ihre neue Verbindung in einem separaten Terminal, bevor Sie Ihre aktuelle Sitzung schließen!

Schritt 4: Firewall konfigurieren

Verwenden Sie UFW (Uncomplicated Firewall):

# Install UFW
sudo apt install ufw -y

# Set default policies
sudo ufw default deny incoming
sudo ufw default allow outgoing

# Allow SSH (use your custom port if changed)
sudo ufw allow 2222/tcp

# Allow HTTP/HTTPS
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp

# Enable firewall
sudo ufw enable

# Check status
sudo ufw status verbose

Schritt 5: Fail2Ban installieren und konfigurieren

Fail2Ban blockiert automatisch IPs mit zu vielen fehlgeschlagenen Anmeldeversuchen:

sudo apt install fail2ban -y

Erstellen Sie eine lokale Konfiguration:

sudo nano /etc/fail2ban/jail.local

Fügen Sie hinzu:

[DEFAULT]
bantime = 1h
findtime = 10m
maxretry = 5
banaction = ufw

[sshd]
enabled = true
port = 2222
filter = sshd
logpath = /var/log/auth.log
maxretry = 3
bantime = 24h

Fail2Ban starten:

sudo systemctl enable fail2ban
sudo systemctl start fail2ban

# Check banned IPs
sudo fail2ban-client status sshd

Schritt 6: Nicht verwendete Dienste deaktivieren

Laufende Dienste auflisten:

sudo systemctl list-units --type=service --state=running

Deaktivieren Sie alles, was Sie nicht benötigen:

sudo systemctl disable --now cups
sudo systemctl disable --now avahi-daemon
sudo systemctl disable --now bluetooth

Schritt 7: Einbruchserkennung einrichten

Installieren Sie AIDE (Advanced Intrusion Detection Environment):

sudo apt install aide -y

# Initialize database
sudo aideinit

# Move database
sudo mv /var/lib/aide/aide.db.new /var/lib/aide/aide.db

# Check for changes (run periodically)
sudo aide --check

Schritt 8: Kernel-Sicherheitsparameter konfigurieren

Bearbeiten Sie die sysctl-Konfiguration:

sudo nano /etc/sysctl.d/99-security.conf

Fügen Sie hinzu:

# IP spoofing protection
net.ipv4.conf.all.rp_filter = 1
net.ipv4.conf.default.rp_filter = 1

# Ignore ICMP redirects
net.ipv4.conf.all.accept_redirects = 0
net.ipv6.conf.all.accept_redirects = 0

# Disable source routing
net.ipv4.conf.all.accept_source_route = 0
net.ipv6.conf.all.accept_source_route = 0

# SYN flood protection
net.ipv4.tcp_syncookies = 1

# Ignore ping broadcasts
net.ipv4.icmp_echo_ignore_broadcasts = 1

# Log suspicious packets
net.ipv4.conf.all.log_martians = 1

Änderungen anwenden:

sudo sysctl -p /etc/sysctl.d/99-security.conf

Schritt 9: Protokollüberwachung einrichten

Konfigurieren Sie logwatch für tägliche Berichte:

sudo apt install logwatch -y

# Generate report
sudo logwatch --detail High --mailto your@email.com --service All --range today

Richten Sie einen täglichen Cron-Job ein:

echo "0 0 * * * /usr/sbin/logwatch --output mail --mailto your@email.com --detail high" | sudo tee /etc/cron.d/logwatch

Schritt 10: Zwei-Faktor-Authentifizierung aktivieren (Optional)

Installieren Sie Google Authenticator:

sudo apt install libpam-google-authenticator -y

# Run setup as your user
google-authenticator

Beantworten Sie die Eingabeaufforderungen und speichern Sie Ihre Backup-Codes!

Bearbeiten Sie die PAM-Konfiguration:

sudo nano /etc/pam.d/sshd

Fügen Sie oben hinzu:

auth required pam_google_authenticator.so

Bearbeiten Sie die SSH-Konfiguration:

sudo nano /etc/ssh/sshd_config

Setzen Sie:

ChallengeResponseAuthentication yes
AuthenticationMethods publickey,keyboard-interactive

SSH neu starten:

sudo systemctl restart sshd

Best Practices

  1. Regelmäßige Updates - Wöchentliche Update-Prüfungen planen
  2. Minimale Software - Installieren Sie nur, was Sie benötigen
  3. Starke Passwörter - Verwenden Sie einen Passwort-Manager, mindestens 16 Zeichen
  4. Prinzip der geringsten Privilegien - Benutzer erhalten nur den Zugriff, den sie benötigen
  5. Regelmäßige Audits - Protokolle und Zugriffe wöchentlich überprüfen
  6. Backup vor Änderungen - Haben Sie immer einen Rollback-Plan
  7. Aktiv überwachen - Richten Sie Warnmeldungen für verdächtige Aktivitäten ein
  8. VPN für sensiblen Zugriff verwenden - Erwägen Sie WireGuard oder Tailscale für den Admin-Zugriff

Häufige Fehler, die zu vermeiden sind

Passwort-Authentifizierung deaktivieren, bevor SSH-Schlüssel eingerichtet sind – Sie sperren sich selbst aus

Zu viele Firewall-Ports öffnen – Jeder offene Port ist eine Angriffsfläche

Root für alles verwenden – Ein Fehler kann Ihr System zerstören

Protokolle ignorieren – Angriffe zeigen oft Warnsignale, bevor sie erfolgreich sind

Schwache SSH-Schlüssel – Verwenden Sie mindestens Ed25519 oder RSA 4096-Bit

Dasselbe Passwort überall – Wenn ein Dienst kompromittiert wird, sind alle betroffen

Ausgehende Regeln vergessen – Malware kommuniziert über ausgehende Verbindungen nach Hause

Änderungen nicht testen – Testen Sie immer den SSH-Zugang, bevor Sie Ihre Sitzung schließen

Sicherheits-Checkliste

Verwenden Sie diese Checkliste für jeden neuen Server:

FAQ

Wie oft sollte ich meinen Server aktualisieren?

Sicherheitsupdates sollten so schnell wie möglich angewendet werden – idealerweise automatisch. Für andere Updates ist wöchentlich ein guter Rhythmus.

Ist das Ändern des SSH-Ports wirklich notwendig?

Es ist nicht erforderlich, reduziert aber automatisierte Angriffe in Ihren Protokollen erheblich. Bots scannen hauptsächlich Port 22. Es ist Sicherheit durch Unbekanntheit – kein Ersatz für echte Sicherheit, aber eine hilfreiche Ergänzung.

Was tun, wenn ich mich ausgesperrt habe?

Deshalb bieten Hostinger VPS und ähnliche Anbieter Konsolenzugang. Sie können über das Kontrollpanel auf Ihren Server zugreifen, auch wenn SSH nicht funktioniert.

Sollte ich ein VPN verwenden, um auf meinen Server zuzugreifen?

Für hochsensible Server ja. WireGuard ist leichtgewichtig und schnell, und Tailscale macht die Einrichtung noch einfacher. Für die meisten Anwendungsfälle ist ein ordnungsgemäß konfiguriertes SSH mit Schlüsselauthentifizierung und Fail2Ban ausreichend.

Wie erkenne ich, ob mein Server kompromittiert wurde?

Anzeichen sind: unerwartete CPU-Auslastung, unbekannte Prozesse, geänderte Dateien (AIDE erkennt dies), unbekannte Cron-Jobs und unerklärlicher Netzwerkverkehr. Regelmäßige Überwachung ist entscheidend.

Ist Root-Login wirklich so gefährlich?

Ja. Root hat unbegrenzte Macht. Ein Tippfehler oder eine kompromittierte Sitzung kann alles zerstören. Die Verwendung von sudo gibt Ihnen einen Sicherheitspuffer und einen Prüfpfad.


Nächste Schritte: Sobald Ihr Server abgesichert ist, schauen Sie sich unseren Docker Compose-Bereitstellungsleitfaden an, um Anwendungen sicher zu deployen.

~/vps-security-guide/get-started

Ready to get started?

Get the best VPS hosting deal today. Hostinger offers 4GB RAM VPS starting at just $4.99/mo.

Get Hostinger VPS — $4.99/mo

// up to 75% off + free domain included

// related topics

VPS-Sicherheit Server-Härtung SSH-Sicherheit Firewall-Einrichtung fail2ban VPS-Schutz

// related guides

Andrius Putna

Andrius Putna

I am Andrius Putna. Geek. Since early 2000 in love tinkering with web technologies. Now AI. Bridging business and technology to drive meaningful impact. Combining expertise in customer experience, technology, and business strategy to deliver valuable insights. Father, open-source contributor, investor, 2xIronman, MBA graduate.

// last updated: February 6, 2026. Disclosure: This article may contain affiliate links.