Firewall-Verwaltung¶
enconf nutzt nftables als Firewall-Backend und fail2ban für automatische IP-Sperrung bei Brute-Force-Angriffen.
Übersicht¶
Die Firewall-Verwaltung zeigt den aktuellen Status und alle konfigurierten Regeln.
Firewall-Status¶
| Feld | Beschreibung |
|---|---|
| Status | Aktiv oder Inaktiv |
| Backend | nftables |
Firewall deaktiviert
Wenn die Firewall deaktiviert ist, sind alle Ports des Servers offen zugänglich. Aktivieren Sie die Firewall für den Produktionsbetrieb.
Server-Auswahl¶
Bei Multi-Server-Konfigurationen wählen Sie über den Server-Selektor am oberen Rand, für welchen Server Sie die Firewall verwalten möchten.
Firewall-Regeln¶
Die Regeltabelle zeigt alle aktiven nftables-Regeln:
| Spalte | Beschreibung |
|---|---|
| Chain | input oder output |
| Protokoll | TCP oder UDP |
| Port | Ziel-Port |
| Quelle | Quell-IP oder -Netzwerk (leer = alle) |
| Aktion | accept oder drop |
| Kommentar | Beschreibung der Regel |
| Geschützt | Systemkritische Regeln (nicht löschbar) |
Geschützte Regeln¶
Bestimmte Regeln sind als geschützt markiert und können nicht gelöscht werden:
- SSH (Port 22)
- HTTP (Port 80)
- HTTPS (Port 443)
- DNS (Port 53)
- SMTP (Port 25, 465, 587)
- IMAP (Port 143, 993)
- POP3 (Port 110, 995)
- FTP (Port 21)
- Panel-API (Port konfigurierbar)
- Agent (Port 50000)
Geschützte Regeln
Diese Regeln sind für den Betrieb des Panels und der verwalteten Dienste erforderlich. Das Löschen würde den Zugang zum Server unterbinden.
Regel erstellen¶
- Klicken Sie auf Regel erstellen
- Füllen Sie das Formular aus:
| Feld | Pflicht | Beschreibung |
|---|---|---|
| Chain | Ja | input (eingehend) oder output (ausgehend) |
| Protokoll | Ja | tcp oder udp |
| Port | Ja | Ziel-Port-Nummer |
| Quell-IP | Nein | Eine oder mehrere Quell-IPs/CIDR-Netzwerke (leer = alle) |
| Aktion | Ja | accept (erlauben) oder drop (blockieren) |
| Kommentar | Nein | Beschreibung der Regel |
- Klicken Sie auf Erstellen
Mehrere IPs pro Regel
Im Feld Quell-IP können Sie mehrere Adressen hinterlegen – tippen Sie sie nacheinander ein oder fügen Sie sie mit Komma, Leerzeichen oder Zeilenumbruch getrennt ein. IPv4 und IPv6 sind gemischt erlaubt; die Regel greift dann für alle angegebenen Quellen.
Beispiele¶
SSH auf bestimmte IP beschränken¶
| Feld | Wert |
|---|---|
| Chain | input |
| Protokoll | tcp |
| Port | 22 |
| Quell-IP | 203.0.113.10 |
| Aktion | accept |
Ausgehenden SMTP blockieren¶
| Feld | Wert |
|---|---|
| Chain | output |
| Protokoll | tcp |
| Port | 25 |
| Quell-IP | (leer) |
| Aktion | drop |
Reihenfolge
Regeln werden in der Reihenfolge ihrer Erstellung abgearbeitet. Spezifischere Regeln sollten vor allgemeineren stehen.
Regel bearbeiten¶
- Klicken Sie auf das Bearbeiten-Symbol in der Aktionsspalte
- Passen Sie die Felder im Formular an (inkl. mehrerer Quell-IPs)
- Klicken Sie auf Speichern
Die geänderte Regel wird zuerst neu angelegt und die alte anschließend entfernt – bei einem Fehler bleibt die ursprüngliche Regel erhalten. Geschützte Systemregeln können nicht bearbeitet werden.
Regel löschen¶
- Klicken Sie auf das Löschen-Symbol in der Aktionsspalte
- Bestätigen Sie die Löschung
Vorsicht beim Löschen
Das Löschen einer accept-Regel kann dazu führen, dass der betreffende Port blockiert wird, falls eine Default-Drop-Policy aktiv ist.
Firewall aktivieren / deaktivieren¶
- Nutzen Sie den Schalter am oberen Rand der Seite
- Nach Deaktivierung sind alle Ports offen
- Nach Aktivierung gelten alle konfigurierten Regeln
fail2ban¶
fail2ban überwacht Logdateien und sperrt automatisch IP-Adressen nach wiederholten fehlgeschlagenen Anmeldeversuchen.
Status anzeigen¶
Die fail2ban-Informationen werden unter System > fail2ban angezeigt:
| Information | Beschreibung |
|---|---|
| Jail | Name des Überwachungsjails (z. B. sshd, postfix) |
| Gesperrt gesamt | Gesamtzahl der Sperrungen |
| Aktuell gesperrt | Liste der derzeit gesperrten IP-Adressen |
IP-Adresse entsperren¶
- Navigieren Sie zu System > fail2ban
- Wählen Sie das betreffende Jail
- Klicken Sie auf Entsperren neben der IP-Adresse
Überwachte Dienste¶
fail2ban überwacht standardmäßig:
- SSH — Fehlgeschlagene SSH-Logins
- Postfix — Fehlgeschlagene SMTP-Authentifizierungen
- Dovecot — Fehlgeschlagene IMAP/POP3-Logins
- ProFTPD — Fehlgeschlagene FTP-Logins
- Panel — Fehlgeschlagene Panel-Logins
IP-Adressen blockieren¶
Um eine IP-Adresse manuell zu blockieren:
- Erstellen Sie eine neue Firewall-Regel
- Setzen Sie die Quell-IP auf die zu sperrende Adresse
- Wählen Sie Aktion
drop
Für dauerhafte IP-Sperren nutzen Sie die Firewall-Regeln. Für temporäre Sperren nutzen Sie fail2ban.
GeoIP – Länderfilter¶
Mit dem GeoIP-Länderfilter sperren Sie eingehenden Traffic aus ganzen Ländern – für IPv4 und IPv6 gleichzeitig. Sinnvoll, wenn Ihre Dienste nur aus bestimmten Regionen erreichbar sein sollen oder Sie Angriffe aus bekannten Herkunftsländern reduzieren möchten.
So funktioniert es¶
- Öffnen Sie Firewall und wählen Sie im Abschnitt GeoIP – Länderfilter die zu sperrenden Länder aus (Mehrfachauswahl mit Suche und Flaggen).
- Klicken Sie auf Anwenden.
Der Agent lädt die aktuellen IP-Bereiche der gewählten Länder und legt sie in zwei nftables-Sets (geoblock für IPv4, geoblock6 für IPv6) ab. Eingehende Pakete aus diesen Bereichen werden verworfen.
Vollständige Sperre – inklusive SSH und Panel¶
Gesperrte Länder werden komplett blockiert: eingehender Traffic aus diesen Ländern wird auf allen Ports verworfen – auch SSH (22), Panel (3443) und Agent (50000). Das ist der Sinn der Funktion: Brute-Force-Angriffe (etwa auf SSH oder den Panel-Login) aus diesen Ländern werden vollständig gestoppt.
Zwei Regeln stehen dabei über dem Länder-Drop und bleiben immer erlaubt:
- Vertrauenswürdige IPs aus Ihrer Allowlist (IPv4 oder IPv6) behalten vollen Zugang – auch wenn ihre IP in einem gesperrten Land liegt.
- Bestehende Verbindungen (
established/related) bleiben erlaubt, damit Ihre aktuell aktive Sitzung beim Anwenden nicht abbricht. Neue (Brute-Force-)Verbindungen treffen dagegen den Drop.
Trusted-IP eintragen, sonst Lock-out
Sperren Sie ein Land, in dem Ihre eigene feste IP liegt, ohne diese IP in die Allowlist einzutragen, sperren Sie sich beim nächsten Verbindungsaufbau selbst aus. Tragen Sie deshalb Ihre feste IP (Büro, VPN) als vertrauenswürdig ein. Die IP, von der aus Sie das Panel gerade bedienen, wird automatisch ergänzt.
Wirkt auch auf eingehende E-Mail
Weil der Filter alle eingehenden Verbindungen dieser Länder IP-basiert verwirft, betrifft das auch eingehende E-Mail (SMTP, Port 25). Mail von Absendern, deren Mailserver-IP in einem gesperrten Land liegt – im Erlauben-Modus: in einem nicht erlaubten Land – wird nicht zugestellt. Das gilt auch für große Anbieter wie Exchange Online / Microsoft 365 oder Google Workspace, deren Versand-IPs in einem betroffenen Bereich liegen können. Tragen Sie kritische Mail-Quellen bei Bedarf als vertrauenswürdige IP ein.
Automatische Aktualisierung¶
Die IP-Bereiche der Länder ändern sich laufend. Ein wöchentlicher systemd-Timer (enconf-geoip-refresh.timer, sonntags) lädt die Daten automatisch neu, sodass die Sperren aktuell bleiben. Die Länderdaten stammen von ipdeny.com.
Deaktivieren¶
Entfernen Sie alle Länder aus der Auswahl und klicken Sie auf Anwenden. Die nftables-Sets werden geleert und die Sperr-Regeln entfernt.
Modus, Zonen und Bots (ab v2.5.162)¶
Modus — zwei Betriebsarten:
- Ausgewählte sperren (Standard): Traffic aus den gewählten Ländern wird verworfen.
- Nur ausgewählte erlauben (Allowlist): nur Traffic aus den gewählten Ländern wird erlaubt, alles andere verworfen. Ideal für „nur Europa erlauben".
Kontinente & Zonen — statt Länder einzeln anzuklicken, fügen Schnellauswahl-Buttons ganze Gruppen hinzu: Kontinente (Afrika, Asien, Europa, Nord-/Südamerika, Ozeanien) sowie die Zonen EU, DACH und EU+CH+UK.
Bekannte Bots zulassen — Suchmaschinen-Crawler bleiben erreichbar, auch wenn ihr Herkunftsland gesperrt ist (sonst leidet das SEO). Auswählbar: Googlebot, Bingbot, Applebot (offizielle IP-Bereiche, wöchentlich aktualisiert) sowie DuckDuckBot, AhrefsBot, SemrushBot. Die Bot-IPs werden — wie die Trusted-IPs — über der Länder-Regel akzeptiert.
Erweiterter Bot-Katalog, eigene Bots & Let's Encrypt (ab v2.5.163)¶
Katalog — zusätzlich zu Google/Bing/Apple/DuckDuckGo/Ahrefs/Semrush jetzt auch YandexBot, Baiduspider, Meta/Facebook, PetalBot, Sogou.
Eigene Bots — unter „Eigene Bots" definieren Sie beliebige weitere Crawler: Name + Quelle. Die Quelle ist entweder eine URL (wird geladen und wöchentlich mit aktualisiert – Google-Style prefixes-JSON oder eine Klartext-CIDR-Liste) oder direkt eingegebene CIDRs (z. B. 1.2.3.0/24, 5.6.7.8).
Let's Encrypt / ACME — der Schalter Let's Encrypt / ACME erlauben (Standard: an) hält Port 80 über der Länder-Regel offen. So funktioniert die ACME-HTTP-01-Domain-Validierung aus jedem Land, auch bei aktiver Länder-Sperre – SSL-Ausstellung und -Erneuerung brechen nicht. (Let's Encrypt veröffentlicht bewusst keine feste IP-Liste, daher wird Port 80 statt einzelner IPs freigehalten.)