Zum Inhalt springen
Serverküche
Suche

Die Suche wird geladen … (nur in der veröffentlichten Seite verfügbar).

Netcup Schwierigkeit: Fortgeschritten

netcup-Firewall im SCP einrichten (mit stateless-UDP-Kniff)

Die netcup-Firewall als Netzwerk-Schutz vor dem Server einrichten: komponierbare Policy-Templates im SCP – mit dem Kniff für stateless UDP (DNS & NTP).

· 10 Min. Lesezeit ·Dauer: ca. 25 Minuten
Inhaltsverzeichnis

netcup bringt eine Firewall schon vor deinem Server mit – im Server Control Panel, noch bevor ein Paket das Betriebssystem erreicht. Richtig gebaut ist sie ein starker Schutzschild. Es gibt dabei aber einen Kniff, an dem viele scheitern: Die netcup-Firewall ist bei UDP zustandslos. Dieses Tutorial zeigt dir eine saubere, wiederverwendbare Firewall – und warum DNS und NTP sonst plötzlich klemmen.

Was bauen wir?

Wir bauen im netcup SCP eine Netzwerk-Firewall aus komponierbaren Policy-Templates: ein Basis-Template (das jeder Server braucht), eins für SSH und eins für Web (HTTP/HTTPS). Diese Bausteine weist du deinem Server nach Bedarf zu – ein Webserver bekommt Basis + SSH + Web, ein Server ohne Website nur Basis + SSH. Am Ende ist eingehend alles gesperrt außer dem, was du bewusst erlaubst.

Ein netcup-spezifisches Detail macht dabei den Unterschied: Bei UDP arbeitet die Firewall zustandslos – weshalb Dienste wie DNS und NTP eine eigene Eingangs-Regel brauchen, sonst klemmen sie plötzlich. Warum das so ist und wie das Basis-Template es löst, zeigt Schritt 2.

Netzwerk-Firewall ≠ Host-Firewall

Die netcup-Firewall arbeitet im Netzwerk vor dem Server und ersetzt nicht die Firewall auf dem Server selbst (UFW). Beide zusammen sind „Defense in Depth": Fällt eine Schicht aus oder ist falsch konfiguriert, greift die andere. Richte ruhig beide ein.

Voraussetzungen

  • Ein netcup-Server, z. B. dein erster VPS.
  • Deine SCP-Zugangsdaten (Kundennummer + SCP-Passwort aus der netcup-Willkommensmail – andere als dein SSH-Login).
  • Klarheit über deinen SSH-Port: Standard ist 22, und beim SSH-Absichern bleibt er auch dabei. Hast du ihn anderweitig geändert, nimm deinen echten Port – sonst sperrst du dich beim Aktivieren aus.
🍳 Empfehlung Anzeige

VPS 1000 G12

4 vCore · 8 GB RAM · 256 GB NVMe

ab 10,36 €/Monat

Die Firewall ist bei jedem netcup-Server im SCP inklusive.

Zu netcup →

💶 5 € Gutschein für netcup-Neukunden:36nc17844976032 (nur Neukunden, keine Domains)

Schritt für Schritt

Schritt 1: Firewall Policys im SCP öffnen

Melde dich im Server Control Panel an und öffne oben den Menüpunkt Firewall Policys. Hier legst du wiederverwendbare Regelsätze („Policys") an – unabhängig vom einzelnen Server. Erst später weist du sie zu.

Schritt 2: Das Basis-Template bauen

Klick auf Firewall Policy erstellen, vergib den Namen Serverküche Basis und lege über Regel hinzufügen diese vier Regeln an – alle EINGEHEND und ACCEPT:

BeschreibungProtokollQuell-Port (Src)Ziel-Port (Dst)
DNS-Antworten (stateless)UDP53beliebig
NTP-Antworten (stateless)UDP123beliebig
ICMP (Ping/PMTU)ICMP
ICMPv6 (Neighbor Discovery)ICMPv6

Das Basis-Template im netcup SCP mit vier eingehenden ACCEPT-Regeln: DNS und NTP über den Quell-Port, dazu ICMP und ICMPv6
Das Basis-Template: DNS/NTP-Antworten kommen über den Quell-Port 53/123 herein

Zwei Dinge, die hier den Unterschied machen:

  • DNS/NTP über den Src Port, nicht den Ziel-Port. Dein Server fragt DNS/NTP an (ausgehend); die Antwort kommt von Port 53 bzw. 123 zurück. Weil UDP zustandslos ist, brauchst du diese Eingangs-Regel – sonst gibt es keine Namensauflösung und keine Zeitsynchronisation, obwohl „alles andere" zu funktionieren scheint.
  • ICMPv6 nie vergessen. Ohne Neighbor Discovery bricht IPv6 komplett. ICMP (v4) dazu ist für Ping und die Pfad-MTU-Erkennung sinnvoll. netcups Default-Policy „Ping allow" deckt ICMP zwar schon ab – im Basis-Template steht es bewusst nochmal drin, damit dein Fundament auch dann vollständig bleibt, wenn du die netcup-Defaults einmal entfernst.

Sobald eine Regel da ist, sperrt netcup den Rest automatisch

Ein abschließendes „alles sperren" musst du nicht anlegen. Ohne zugewiesene Policy ist eingehend alles erlaubt. Sobald du dem Server aber mindestens eine eigene Policy zuweist, schaltet netcup den Default auf „block all" – ab dann ist eingehend alles gesperrt, was keine deiner Regeln ausdrücklich erlaubt. Die Whitelist entsteht also von selbst; ausgehend bleibt offen.

Nutzt dein Server DHCP?

netcup-VPS sind in der Regel statisch konfiguriert (iface … inet static) – dann ist hier nichts zu tun. netcups Netz betreibt zwar einen DHCP-Server, aber weil UDP zustandslos ist, wird die DHCP-Antwort (Quell-Port 67) von der Whitelist verworfen. Ist dein Server ausnahmsweise per DHCP konfiguriert, ergänze im Basis-Template EINGEHEND · UDP · ACCEPT · Src 67 (für DHCPv6 zusätzlich Src 547) – sonst verliert er bei der nächsten Lease-Erneuerung seine IP.

Schritt 3: Kleine Bausteine für SSH und Web

Statt eines großen Regel-Monolithen legst du atomare Templates an, die du frei kombinierst. Erstelle nach demselben Muster zwei weitere Policys:

  • Serverküche SSH – eine Regel: EINGEHEND, TCP, ACCEPT, Ziel-Port 22.
  • Serverküche Web – zwei Regeln: EINGEHEND, TCP, ACCEPT, Ziel-Port 80 und 443.

Die drei komponierbaren Firewall-Templates in der netcup-SCP-Übersicht: Basis, SSH und Web
Drei kleine, wiederverwendbare Bausteine statt eines Monolithen

Der Gewinn: Die Basis-Regeln stehen nur einmal da, nicht in jeder Policy dupliziert. Kommt später ein Dienst dazu (z. B. ein Mailserver oder WireGuard), baust du dafür ein weiteres kleines Template und steckst es dazu – ohne die bestehenden anzufassen.

Schritt 4: Templates dem Server zuweisen

Wechsle zu Server → deinen Server → Reiter „Firewall" und klick auf Firewall Policys editieren. Schieb aus Verfügbare Firewall Policys die passenden nach Ausgewählte: für einen Webserver Serverküche Basis + Serverküche SSH + Serverküche Web.

Der Zuweisungs-Dialog im netcup SCP: links die verfügbaren Templates, rechts die für diesen Server ausgewählten
Zuweisen = zusammenstecken: Basis + SSH + Web auf einen Webserver

Bestätige mit Übernehmen und dann Speichern. Prüfe, dass der Schalter „Firewall aktiv" eingeschaltet ist. Die zugewiesenen Regeln erscheinen jetzt in der Liste – zusammen mit netcups Default-Policys (dazu unten mehr).

Der Firewall-Reiter des Servers mit aktiver Firewall und den zugewiesenen Regeln
Firewall aktiv – Regeln werden von oben nach unten ausgewertet, erste Übereinstimmung greift

Nicht aussperren

Aktiviere die Firewall nur, wenn die SSH-Regel (Port 22 bzw. dein echter Port) drin ist. Lass während der Umstellung eine zweite SSH-Sitzung offen und öffne parallel eine neue Verbindung, um den Zugang zu testen – erst wenn die klappt, die alte Sitzung schließen. Kommst du gar nicht mehr rein, hilft die VNC-Konsole unter Bildschirm im SCP.

Schritt 5: Fertige Templates für gängige Dienste

Genau nach dem Muster aus Schritt 3 folgen hier fertige Vorlagen für die häufigsten Selfhosting-Dienste. Jede ist ein eigenes kleines Template, alle Regeln sind EINGEHEND und ACCEPT. Bau nur die, die du wirklich brauchst, und steck sie wie in Schritt 4 zu Serverküche Basis + Serverküche SSH dazu.

Bei UDP-Diensten: Ziel-Port, nicht Quell-Port

Für UDP-Dienste, die du selbst anbietest (VPN, TURN, eigener DNS-Server), steht der Port im Ziel-Port (Dst) – denn hier verbinden sich Clients zu deinem Server. Das ist das Gegenteil der DNS/NTP-Regeln aus dem Basis-Template: Dort steht der Port im Quell-Port (Src), weil dein Server dort der fragende Client ist, dessen Antwort zurückkommt. TCP-Antworten sind davon nicht betroffen (der Firewall-Zustand spielt nur bei UDP keine Rolle); ausgehend ist ohnehin alles erlaubt.

Mailserver (mailcow & Co.)

BeschreibungProtokollQuell-Port (Src)Ziel-Port (Dst)
SMTP (Mailannahme anderer Server)TCP25
Submission (STARTTLS)TCP587
Submission (implizites TLS)TCP465
IMAP (STARTTLS)TCP143
IMAPSTCP993
POP3 (STARTTLS)TCP110
POP3STCP995
ManageSieve (Filterregeln)TCP4190

Zwei Dinge, die beim Mailserver zusätzlich dazugehören:

  • Web-UI und Zertifikate: mailcow braucht 80/443 für das Webinterface und den Let’s-Encrypt-Abruf – dafür einfach das Serverküche Web-Template mit zuweisen.
  • Ausgehendes SMTP freischalten: Ein Mailserver muss auf Port 25 ausgehend zustellen können. netcup sperrt das per Default-Policy „netcup Mail block" – die musst du am Server entfernen (siehe „Wenn es nicht funktioniert"). Und ohne korrekten PTR-/Reverse-DNS-Eintrag landen deine Mails im Spam.

WireGuard-VPN

BeschreibungProtokollQuell-Port (Src)Ziel-Port (Dst)
WireGuardUDP51820

51820 ist der übliche Standard – nimm den Wert aus deinem ListenPort. Nur diese eine eingehende Regel ist nötig; die Antworten an die Clients gehen ausgehend raus.

OpenVPN

BeschreibungProtokollQuell-Port (Src)Ziel-Port (Dst)
OpenVPN (UDP, Standard)UDP1194
OpenVPN (TCP-Fallback)TCP1194

Standard ist UDP 1194. Die TCP-Regel nur, wenn du OpenVPN bewusst über TCP betreibst (manche legen es zusätzlich auf TCP 443, um durch restriktive fremde Netze zu kommen) – sonst weglassen.

Zabbix-Monitoring

Hier kommt es auf die Rolle des Servers an:

RolleBeschreibungProtokollZiel-Port (Dst)
Überwachter Host (Zabbix-Agent)passive Checks vom ServerTCP10050
Zabbix-ServerTrapper (aktive Agenten/Proxies)TCP10051

Der Zabbix-Server braucht zusätzlich 80/443 fürs Web-Frontend (Serverküche Web). Betreibst du aktive Checks, verbindet sich der Agent ausgehend zum Server auf 10051 – dafür ist am Agenten-Host keine eingehende Regel nötig.

Checkmk

RolleBeschreibungProtokollZiel-Port (Dst)
Überwachter Host (Agent)Agent-Controller, Pull-ModusTCP6556
Checkmk-Server (optional)Agent-Receiver (Push/Registrierung)TCP8000
Checkmk-Server (optional)Livestatus (verteiltes Monitoring)TCP6557

Im Standard-Pull-Modus holt der Checkmk-Server die Daten aktiv ab – er verbindet sich also ausgehend zu 6556 der Agenten. Eingehend braucht deshalb nur der überwachte Host den Port 6556. Der Checkmk-Server selbst kommt mit 80/443 (Serverküche Web) aus; 8000 und 6557 nur, wenn du Push-Modus bzw. verteiltes Monitoring nutzt.

Coturn / TURN-Server (Nextcloud Talk, Matrix)

BeschreibungProtokollQuell-Port (Src)Ziel-Port (Dst)
STUN/TURNTCP3478
STUN/TURNUDP3478
STUN/TURN über TLSTCP5349
STUN/TURN über TLSUDP5349
Medien-Relay (Audio/Video)UDP49152–65535

Die große UDP-Relay-Range ist der Standard – über sie laufen die eigentlichen Audio-/Video-Streams. Du kannst sie in der coturn-Konfiguration (min-port/max-port) enger fassen und die Firewall-Regel dann auf denselben, kleineren Bereich setzen.

Eigener DNS-Server (AdGuard Home, Pi-hole, Unbound)

BeschreibungProtokollQuell-Port (Src)Ziel-Port (Dst)
DNS-AnfragenUDP53
DNS-Anfragen (große Antworten/TCP)TCP53
DNS-over-TLS (DoT)TCP853

Achtung, das ist genau die Gegenrichtung zum Basis-Template: Dort erlaubt Src 53 die Antworten auf deine eigenen DNS-Anfragen; hier erlaubt Dst 53 die Anfragen fremder Clients an deinen DNS-Server. Beides existiert problemlos nebeneinander.

Kein offener Resolver

Ein weltweit offener rekursiver DNS-Server wird für DNS-Amplification-Angriffe missbraucht. Beschränke den Zugriff auf deine eigenen Netze (Quell-Adresse in der Regel setzen) oder biete DNS ausschließlich verschlüsselt (DoT/DoH) für angemeldete Clients an – öffne 53 nie „mal eben" für die ganze Welt.

Datenbank-Fernzugriff (nur im Notfall)

BeschreibungProtokollQuell-Port (Src)Ziel-Port (Dst)
PostgreSQLTCP5432
MySQL / MariaDBTCP3306

Datenbanken gehören nicht ins offene Internet

Eine direkt erreichbare Datenbank ist ein bevorzugtes Angriffsziel. Der richtige Weg ist, den Port gar nicht zu öffnen und stattdessen über einen WireGuard-Tunnel oder einen SSH-Tunnel (ssh -L 5432:localhost:5432 …) zuzugreifen. Musst du den Port trotzdem freigeben, dann nur mit einer auf deine feste Admin-IP eingeschränkten Quell-Adresse in der netcup-Regel – niemals für alle.

Wenn es nicht funktioniert

Nach dem Aktivieren geht keine Namensauflösung mehr (apt update hängt, ping domain.de scheitert, aber ping 1.1.1.1 geht). Die DNS-Antworten werden geblockt. Prüfe im Basis-Template die Regel EINGEHEND UDP ACCEPT, Src-Port 53. Wichtig: Quell-Port, nicht Ziel-Port.

Die Uhr driftet, oder TLS-Zertifikate werden wegen falscher Zeit abgelehnt. Die NTP-Antworten fehlen. Ergänze EINGEHEND UDP ACCEPT, Src-Port 123.

IPv6 funktioniert nicht mehr (v4 schon). Es fehlt die ICMPv6-Regel. Ohne Neighbor Discovery kann der Server über IPv6 nicht einmal seinen Nachbarn (Router) finden.

Du kommst nach dem Aktivieren nicht mehr per SSH rein. Die SSH-Regel fehlt oder nennt den falschen Port. Über die VNC-Konsole (SCP → Bildschirm) kommst du trotzdem auf den Server; korrigiere die Policy und speichere neu. Genau dagegen hilft die „zweite Sitzung offen lassen"-Regel oben.

Der Server kann keine E-Mails versenden (Port 25 raus geht nicht). Das ist kein Fehler deiner Policy, sondern netcups Default-Policy „netcup Mail block" – sie sperrt ausgehendes SMTP (Port 25/465/587) als Spam-Schutz. Für einen echten Mailversand musst du dieses netcup-Template am Server deaktivieren.

Der Server läuft zunächst normal und ist nach ein bis zwei Wochen plötzlich offline. Nutzt der Server DHCP, wird die Lease-Erneuerung von der Whitelist geblockt – die DHCP-Antwort kommt von UDP-Quell-Port 67, den keine Regel erlaubt, und UDP ist zustandslos. Ergänze EINGEHEND · UDP · ACCEPT · Src 67 im Basis-Template. Statisch konfigurierte netcup-VPS (der Standard) sind davon nicht betroffen.

Wartung & Backups

  • Nach jeder Änderung den Zugang testen. Firewall-Regeln sind der klassische Weg, sich selbst auszusperren. Zweite Sitzung offen halten, neue Verbindung prüfen, erst dann fertig.
  • Neue Dienste = neues Template. Brauchst du später einen weiteren Port (Game-Server, WireGuard-VPN über UDP, Datenbank), leg ein kleines eigenes Template an und weise es zusätzlich zu. Die bestehenden Bausteine bleiben unberührt.
  • Reihenfolge beachten. netcup wertet die Regeln von oben nach unten aus; die erste zutreffende Regel greift. Bei reinen ACCEPT-Regeln ist das egal – sobald du aber eigene DROP-Regeln einsetzt, achte auf die Reihenfolge relativ zu den ACCEPTs.
  • netcups Default-Policys kennen. „netcup Mail block" (ausgehendes SMTP auf Port 25/465/587 gesperrt) und „netcup Ping allow" sind vorgegeben. Über Default Policys wiederherstellen kommst du im Notfall auf einen bekannten, funktionierenden Grundzustand zurück, falls du dich mit eigenen Regeln ausgesperrt hast – zusammen mit der VNC-Konsole dein zweites Sicherheitsnetz.

Zuletzt aktualisiert: 19.07.2026

Feedback per E-Mail: feedback@serverkueche.de

Das könnte dir auch schmecken