InfraFenceInfraFence

Live Security Operations

Loslegen

Einen HestiaCP-Server absichern

Zuletzt aktualisiert:

HestiaCP verwaltet seine eigene Firewall: Es schreibt die iptables-Regeln selbst, und seine fail2ban-Jails sperren darüber. Das macht den Betrieb einfach, heißt aber auch, dass jedes andere Tool damit leben muss, dass Hestia die Firewall neu aufbaut.

Diese Seite erklärt, wie die Firewall von Hestia funktioniert und wie der InfraFence-Agent auf einem HestiaCP-Server daneben arbeitet. Die Angaben zu HestiaCP stammen aus seiner Dokumentation und seinem Quellcode, Stand November 2026.

Wie die Firewall von HestiaCP funktioniert

  • Die Regeln, die du auf der Seite Firewall von Hestia festlegst (oder mit v-add-firewall-rule), wendet `v-update-firewall` an. Es leert die INPUT-Chain, baut sie aus den Regeln von Hestia neu auf und setzt die Policy von INPUT auf DROP.
  • Die fail2ban-Jails von Hestia sperren über Hestias eigene Befehle, in fail2ban-<name>-Chains, die Hestia für jeden Dienst in INPUT einhängt.
  • Hestia verwaltet außerdem ipset-Listen für Black- und Whitelists. Seine Firewall-Dokumentation warnt, dass es iptables-Regeln löscht, die nicht über Hestia oder sein Skript custom.sh angelegt wurden.

Eine Regel, die du von Hand mit iptables anlegst, überlebt die nächste Firewall-Änderung in Hestia also nicht. Jedes Tool, das eigene Regeln anlegt, muss sie wiederherstellen.

Wie der Agent damit zurechtkommt

  • Seine Regeln liegen in eigenen Chains (INFRAFENCE und die anderen), die Hestia beim Neuaufbau von INPUT nicht anfasst. Verloren geht nur der Sprung aus INPUT, wenn Hestia die Chain leert.
  • Er setzt diesen Sprung innerhalb einer Minute wieder ein, vor jede Regel, die Verkehr annehmen kann, damit seine Sperren auch für die Ports gelten, die Hestia geöffnet hat. Er legt nie eine Accept-Regel an und öffnet deshalb nie etwas, das Hestia geschlossen hat.
  • fail2ban bleibt unberührt. Hestias fail2ban-<name>-Chains und die Jails werden nicht angefasst: Beide verwerfen nur Verkehr, kommen sich also nicht in die Quere.
  • Baut Hestia die Firewall immer wieder neu auf, meldet der Agent ein Ereignis zum Firewall-Konflikt, damit du weißt, wo du nachsehen musst (Koexistenz).

Was der Agent auf einem HestiaCP-Server tut

  • Er erkennt HestiaCP an /usr/local/hestia, liest die Version aus hestia.conf, und das Dashboard zeigt beides.
  • Er ändert nie die Webserver-Konfiguration. Hestia verwaltet nginx und Apache, deshalb fügt der Agent keine ModSecurity-Regeln und keine User-Agent-Sperren hinzu; Bots, die auf Blockieren stehen, werden stattdessen an der Firewall gesperrt (Bots).
  • Er liest das Access-Log jeder Website, aus der Webserver-Konfiguration, die Hestia schreibt, und überspringt die .bytes-Dateien, die Hestia für Bandbreitenzähler nutzt (Web-Firewall).
  • Er scannt jede Website auf Malware: /home/<user>/web/<domain>/public_html findet er von selbst, mit der zugehörigen Domain (Malware).
  • Er kann deine Websites für das Monitoring-Badge verifizieren, indem er seine Verifizierungsdatei in den Web-Root der Website schreibt (Monitoring-Badge).
  • Er stoppt SSH-Brute-Force an der Firewall, kann Datenbank-Ports, die aus dem Internet erreichbar sind, schließen, wenn du es im Dashboard anforderst, und überwacht ausgehenden Verkehr, DNS und Dateiintegrität wie auf jedem Linux-Server.

Den Agent unter HestiaCP installieren

  1. Führe zuerst die Prüfung nur lesend aus: --dry-run meldet, was im Weg stehen würde, und ändert nichts.
  2. Im Dashboard erstellt Server › Server hinzufügen ein Installations-Token, eine Stunde lang gültig.
  3. Führe den Installationsbefehl als root über SSH aus. An Hestia musst du nichts ändern.
curl -fsSL https://github.com/infrafence/infrafence-agent/releases/latest/download/install.sh | sudo bash -s -- --dry-run

HestiaCP läuft auf Debian und Ubuntu, beide gehören zu den 15 Distributionen, auf denen der Agent vor jedem Release getestet wird (Unterstützte Distributionen).

Kostenlos auf 1 Server testen

Starter schützt einen Server vollständig, kostenlos und ohne Kreditkarte.

  1. 01

    Erstelle ein kostenloses Konto und öffne dann Server › Server hinzufügen, um dein Installations-Token zu erhalten. Es ist eine Stunde gültig.

    Token erstellen
  2. 02

    Führe dann als root auf dem Server aus:

    curl -fsSL https://github.com/infrafence/infrafence-agent/releases/latest/download/install.sh | sudo bash -s -- --token <TOKEN>