# Proxmox Security: SSL-Zertifikate, SSH-Härtung & Firewall

TL;DR / Management Summary Proxmox VE ist als Kern-Infrastruktur ein Primärziel für Angreifer. Wir sichern den Zugriff auf drei Ebenen ab: Die Web-GUI wird mit gültigen SSL-Zertifikaten (via ACME/Let’s Encrypt) geschützt, der SSH-Zugriff wird auf Key-based Auth reduziert, und die integrierte Proxmox-Firewall setzt das Prinzip der minimalen Rechte auf Node- und VM-Ebene durch. Ein Senior Admin nutzt zudem die Zwei-Faktor-Authentifizierung (TFA) für jeden administrativen Login.


# 1. SSL-Zertifikate automatisieren (ACME)

Schluss mit der Browser-Warnung.

Proxmox hat einen integrierten ACME-Client (ähnlich wie OPNsense, Artikel 593).

  1. Datacenter -> ACME -> Accounts: Account mit Email erstellen.
  2. Node -> Certificates -> ACME -> Add: Challenge-Typ wählen.
    • DNS-01 (Empfohlen): Funktioniert ohne offene Ports via API (Cloudflare, AWS).
  3. Aktion: Klicken Sie auf Order Certificates Now. Proxmox holt das Zertifikat, installiert es und startet den Web-Service (pveproxy) neu.

# 2. SSH-Härtung

Den Hintereingang verriegeln.

Standardmäßig erlaubt Proxmox den root-Login via Passwort. Dies ist ein hohes Risiko.

  1. Key-based Auth: Hinterlegen Sie Ihren Public-Key in /root/.ssh/authorized_keys.
  2. Config anpassen: In /etc/ssh/sshd_config:
PermitRootLogin prohibit-password
PasswordAuthentication no
  1. Dienst neustarten: systemctl restart ssh.

# 3. Deep Dive: Die Proxmox Firewall

Segmentierung im Hypervisor.

Die Proxmox Firewall basiert auf iptables (oder nftables in neueren Versionen) und wird über den Cluster synchronisiert.


# 4. Day-2 Operations: Zwei-Faktor-Authentifizierung (TFA)

Der zweite Riegel.

Aktivieren Sie TFA für den root-User:

  1. Datacenter -> Permissions -> Two Factor.
  2. Wählen Sie TOTP (Authenticator App) oder WebAuthn (Yubikey).
  3. Wichtig: Erstellen Sie Recovery-Keys und speichern Sie diese im physischen Safe.

# 5. Troubleshooting & “War Stories”

Wenn die Sicherheit aussperrt.

# Top 3 Fehlerbilder

  1. Symptom: “Login failed” via SSH nach Härtung.

    • Ursache: Der private Schlüssel am Client passt nicht oder die Permissions auf .ssh/ sind zu offen.
    • Lösung: chmod 700 ~/.ssh und chmod 600 ~/.ssh/authorized_keys.
  2. Symptom: Web-GUI nicht erreichbar nach Firewall-Aktivierung.

    • Lösung: Prüfen Sie, ob die Makro-Regel PVE-Management (Port 8006) aktiv ist. Falls ausgesperrt -> Shell: pve-firewall stop.
  3. Symptom: ACME-Zertifikat wird nicht erneuert.

    • Ursache: Port 80 (bei HTTP-01) ist durch die OPNsense blockiert.

# “War Story”: Der “Brute-Force” Schock

Ein Admin stellte Proxmox für den Home-Office Zugriff direkt ins Internet (Port 8006 offen). Die Entdeckung: Nach nur einer Woche war das Log /var/log/pveproxy/access.log 2 GB groß, gefüllt mit Millionen von Login-Versuchen aus aller Welt. Ein Angreifer hatte es fast geschafft, ein schwaches Techniker-Passwort zu erraten. Lehre: Stellen Sie Proxmox niemals direkt ins Internet. Nutzen Sie ein VPN (Artikel 567) oder einen gehärteten Reverse Proxy (Artikel 564) mit IP-Whitelist.


# 6. Monitoring & Reporting

Security-Audit.

# Wer hat sich eingeloggt?

Nutzen Sie den Befehl last auf der Shell, um die letzten Logins auf Systemebene zu sehen.


# 7. Fazit & Empfehlung

Sicherheit in Proxmox ist kein Zustand, sondern ein Prozess.


# Anhang: Cheatsheet (Security)

Aufgabe Befehl / Pfad
Firewall Status pve-firewall status
Firewall Log /var/log/pve-firewall.log
ACME Log /var/log/pve/tasks/ (nach ACME suchen)
Fail2Ban Install apt install fail2ban (Zusatzschutz)

# Referenzen