Firewall für KI-Services: Ports absichern
Was dieser Artikel über Firewalls behandelt
- Wie Du eine Firewall für lokale KI-Services wie Ollama einrichtest und absicherst
- Der Unterschied zwischen
ufwundiptablesund wann Du welches Tool einsetzt - Schritt-für-Schritt-Anleitung zum Absichern des Ports 11434 und anderer Service-Ports
- Best Practices für Default-Deny-Policies, VPN-Zugriff und minimale Angriffsfläche
- Typische Stolpersteine, die Deine Firewall-Regeln sabotieren, und wie Du sie vermeidest
Einleitung: Firewall verständlich erklärt
Wenn Du lokale KI-Services wie Ollama auf Deinem Server betreibst, läuft früher oder später ein Service auf einem Port, der von anderen Geräten im Netzwerk erreichbar ist. Das ist oft praktisch, weil Du Modelle von anderen Rechnern aus ansprechen kannst. Es ist aber auch ein Risiko, wenn der Service keine Authentifizierung verlangt und jeder im Netzwerk Anfragen schicken darf.
Eine Firewall ist die erste Verteidigungslinie. Sie entscheidet, welcher Netzwerkverkehr überhaupt bis zu Deinen Services durchdringt. Im Sicheren Betrieb und speziell in der Netzwerksicherheit gehört die Firewall-Konfiguration zu den Grundlagen, die Du kennen solltest, bevor Du KI-Services produktiv nutzt.
Dieser Artikel zeigt Dir, wie Du eine Firewall mit ufw und iptables aufbaust, welche Regeln für Ollama sinnvoll sind und wie Du typische Fehlerquellen erkennst.
Warum brauche ich eine Firewall?
Ein konkretes Beispiel: Ollama startet standardmäßig und lauscht auf Port 11434. Wenn Du die Umgebungsvariable OLLAMA_HOST auf 0.0.0.0 setzt, um den Service im Netzwerk erreichbar zu machen, akzeptiert Ollama Anfragen von jedem Gerät, das Deinen Server erreichen kann. Ohne Authentifizierung. Ohne TLS. Ohne Rate-Limiting.
In einem Heimnetzwerk mit drei Geräten mag das vertretbar erscheinen. In einem Büro, einem Coworking-Space oder einem öffentlich zugänglichen WLAN wird es zum Problem. Jeder, der die IP-Adresse Deines Servers kennt oder errät, kann Modelle laden, Prompts ausführen und Rechenzeit verbrauchen. Im schlimmsten Fall nutzt jemand Deinen Server, um unangemessene Inhalte zu generieren, die unter Deiner IP-Adresse laufen.
Eine Firewall schränkt ein, wer überhaupt eine Verbindung zu Port 11434 aufbauen darf. Statt allen im Netzwerk zu vertrauen, erlaubst Du nur bestimmten IP-Adressen oder einem VPN den Zugriff. Alle anderen Anfragen werden verworfen, bevor sie Ollama erreichen.
Firewall kurz erklärt
Eine Firewall ist eine Software, die Netzwerkverkehr anhand von Regeln filtert. Jede Regel beschreibt, welcher Verkehr erlaubt oder blockiert wird, basierend auf Kriterien wie Quell-IP, Ziel-Port, Protokoll (TCP oder UDP) und Netzwerkschnittstelle.
Auf Linux-Systemen arbeitet die Firewall im Kernel über das Netfilter-Framework. Die Tools ufw und iptables sind Frontends, die Du nutzt, um Regeln zu definieren, ohne direkt mit dem Kernel zu kommunizieren.
ufw(Uncomplicated Firewall) ist das empfohlene Frontend auf Ubuntu. Es vereinfacht die Syntax und eignet sich für die meisten Anwendungsfälle.iptablesist das klassische, mächtigere Tool. Es bietet feingranulare Kontrolle über jede Phase der Paketverarbeitung, erfordert aber mehr Wissen über die internen Tabellen und Chains.
Beide Tools schreiben letztlich in dieselben Netfilter-Tabellen. Was Du mit ufw konfigurierst, wird intern in iptables-Regeln übersetzt.
Für wen ist dieser Artikel gedacht?
Dieser Artikel richtet sich an Dich, wenn Du lokale KI-Services wie Ollama auf einem Linux-Server betreibst und sicherstellen willst, dass nur autorisierte Geräte zugreifen können. Du solltest grundlegende Kommandozeilen-Kenntnisse haben und wissen, wie Du Dich per SSH mit Deinem Server verbindest. Vorkenntnisse mit Firewalls sind hilfreich, aber nicht zwingend erforderlich, weil jeder Schritt erklärt wird.
Wichtige Begriffe
| Begriff | Bedeutung |
|---|---|
| Firewall | Software, die Netzwerkverkehr anhand von Regeln filtert |
| Port | Nummerierte Adresse, unter der ein Service erreichbar ist, z. B. 11434 für Ollama |
| ufw | Uncomplicated Firewall, vereinfachtes Frontend für Firewall-Regeln unter Ubuntu |
| iptables | Klassisches Tool zur direkten Konfiguration der Netfilter-Regeln im Kernel |
0.0.0.0 | Bind-Adresse, die alle Netzwerkschnittstellen einschließt |
127.0.0.1 | Loopback-Adresse, nur lokal erreichbar, nicht aus dem Netzwerk |
| Allow | Regel, die bestimmten Netzwerkverkehr erlaubt |
| Deny | Regel, die bestimmten Netzwerkverkehr blockiert |
| Rule | Einzelne Firewall-Regel mit definierten Kriterien |
| Default Policy | Verhalten, wenn keine Regel zutrifft, meist Allow oder Deny |
Ollama Standard-Verhalten
Ollama bindet sich standardmäßig an 127.0.0.1:11434. Das bedeutet, nur Prozesse auf demselben Rechner können den Service ansprechen. Von anderen Geräten im Netzwerk ist Port 11434 nicht erreichbar. In dieser Konfiguration brauchst Du keine Firewall-Regeln für Ollama, weil der Service gar nicht nach außen lauscht.
Das ändert sich, wenn Du Ollama im Netzwerk verfügbar machen willst. Du setzt die Umgebungsvariable OLLAMA_HOST auf 0.0.0.0:11434, und Ollama lauscht auf allen Netzwerkschnittstellen. Jetzt ist der Service von jedem Gerät erreichbar, das Deinen Server pingen kann. Genau hier setzt die Firewall an.
Details zur Konfiguration findest Du im Artikel zur Ollama Konfiguration und zum Ollama Netzwerkzugriff.
Firewall mit ufw
ufw ist auf Ubuntu vorinstalliert, aber oft deaktiviert. Die folgenden Schritte zeigen Dir, wie Du die Firewall aktivierst und Regeln für Ollama definierst.
Schritt 1: ufw installieren und Status prüfen
sudo apt update && sudo apt install ufw
sudo ufw status
Die Ausgabe zeigt Status: inactive, solange die Firewall nicht aktiv ist.
Schritt 2: Default Policy setzen
Bevor Du die Firewall aktivierst, definierst Du die Default-Policy. Die sicherste Variante ist, eingehenden Verkehr standardmäßig zu blockieren und ausgehenden zu erlauben.
sudo ufw default deny incoming
sudo ufw default allow outgoing
Schritt 3: SSH-Zugriff erlauben
Wenn Du die Firewall jetzt aktivierst, werden alle eingehenden Verbindungen blockiert, inklusive SSH. Das sperrt Dich aus, wenn Du remote arbeitest. Erlaube daher zuerst SSH.
sudo ufw allow ssh
Wenn Du SSH auf einem anderen Port betreibst, z. B. 2222, gib diesen explizit an:
sudo ufw allow 2222/tcp
Schritt 4: Firewall aktivieren
sudo ufw enable
ufw warnt Dich, dass bestehende SSH-Verbindungen unterbrochen werden könnten. Bestätige mit y, wenn Du im vorherigen Schritt SSH erlaubt hast.
Schritt 5: Ollama nur für localhost erlauben
Wenn Ollama auf 127.0.0.1 lauscht, brauchst Du keine zusätzliche Regel, weil Loopback-Verkehr durch ufw standardmäßig erlaubt wird. Wenn Ollama auf 0.0.0.0 lauscht, Du aber den Zugriff nur auf ein bestimmtes Gerät beschränken willst, erlaubst Du den Port nur für diese IP-Adresse.
sudo ufw allow from 192.168.1.50 to any port 11434
Ersetze 192.168.1.50 durch die IP-Adresse Deines Arbeitsrechners. Alle anderen Geräte im Netzwerk erhalten keine Verbindung zu Port 11434.
Schritt 6: Regeln prüfen
sudo ufw status verbose
Die Ausgabe listet alle aktiven Regeln mit ihren Richtungen und Quell-IP-Adressen. Kontrolliere, dass nur die gewünschten Ports und Adressen erlaubt sind.
Firewall mit iptables
Wenn Du ufw nicht nutzt oder feingranularere Kontrolle brauchst, konfigurierst Du iptables direkt. Die Syntax ist komplexer, aber dafür siehst Du genau, welche Regeln im Kernel aktiv sind.
Bestehende Regeln anzeigen
sudo iptables -L -n -v
Die Option -L listet die Regeln, -n verhindert die Namensauflösung von IP-Adressen, und -v zeigt zusätzliche Statistiken wie Paketzähler.
Loopback-Verkehr erlauben
sudo iptables -A INPUT -i lo -j ACCEPT
Diese Regel erlaubt gesamten Verkehr über das Loopback-Interface lo, sodass lokale Prozesse wie Ollama auf 127.0.0.1 uneingeschränkt funktionieren.
Bestehende Verbindungen erlauben
sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
Verbindungen, die bereits aufgebaut sind oder zu einer bestehenden Verbindung gehören, werden akzeptiert. Das verhindert, dass Antworten auf ausgehende Anfragen blockiert werden.
SSH erlauben
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
Ollama für eine spezifische IP erlauben
sudo iptables -A INPUT -p tcp -s 192.168.1.50 --dport 11434 -j ACCEPT
Alles andere blockieren
sudo iptables -A INPUT -j DROP
Diese Regel steht am Ende der Chain und verwirft alle Pakete, auf die keine vorherige Regel zutraf. Die Reihenfolge ist entscheidend, weil iptables Regeln von oben nach unten abarbeitet und bei der ersten Übereinstimmung stoppt.
Regeln dauerhaft speichern
iptables-Regeln gehen beim Neustart verloren. Speichere sie dauerhaft mit iptables-persistent:
sudo apt install iptables-persistent
sudo netfilter-persistent save
Best Practices
Default Deny als Ausgangspunkt
Setze die Default-Policy immer auf Deny für eingehenden Verkehr. Erlaube nur das, was Du explizit brauchst. Das Prinzip der minimalen Angriffsfläche reduziert das Risiko, dass ein neuer Service versehentlich erreichbar wird.
Spezifisch statt allgemein
Erlaube Ports nur für konkrete IP-Adressen oder Subnetze, nicht für alle. ufw allow 11434 öffnet den Port für das gesamte Internet, wenn der Server eine öffentliche IP hat. ufw allow from 192.168.1.0/24 to any port 11434 beschränkt den Zugriff auf Dein lokales Subnetz.
VPN statt Port-Freigabe
Wenn Du von außerhalb Deines Netzwerks auf Ollama zugreifen willst, öffne den Port nicht im Router. Nutze stattdessen ein VPN wie Tailscale, das eine verschlüsselte Verbindung zwischen Deinen Geräten herstellt. Der Port bleibt nach außen unsichtbar, und nur authentifizierte VPN-Teilnehmer kommen durch.
Regeln dokumentieren
Firewall-Regeln wachsen mit der Zeit. Kommentiere jede Regel, damit Du Monate später noch weißt, warum sie existiert. Bei ufw nutzt Du Präfixe in der Beschreibung, bei iptables hilft ein separates Dokument oder das Tool iptables-save mit Kommentaren.
Regelmäßig prüfen
Gehe Deine Regeln alle paar Wochen durch. Entferne Regeln für Services, die Du nicht mehr nutzt. Jede offene Regel ist ein potenzieller Angriffsvektor.
Beispiel: Ollama sicher zugänglich machen
Dieses Beispiel zeigt den kompletten Ablauf, um Ollama so zu konfigurieren, dass nur Dein Arbeitsrechner zugreifen darf.
Schritt 1: Ollama auf 0.0.0.0 binden
Setze die Umgebungsvariable in der Service-Datei von Ollama:
sudo systemctl edit ollama.service
Füge im Editor diese Zeilen ein:
[Service]
Environment="OLLAMA_HOST=0.0.0.0:11434"
Speichere und lade die Konfiguration neu:
sudo systemctl daemon-reload
sudo systemctl restart ollama
Schritt 2: Firewall-Regel setzen
Erlaube Port 11434 nur für Deinen Arbeitsrechner:
sudo ufw allow from 192.168.1.50 to any port 11434
Schritt 3: Zugriff testen
Teste von Deinem Arbeitsrechner aus:
curl http://192.168.1.10:11434/api/tags
Ersetze 192.168.1.10 durch die IP-Adresse Deines Servers. Du solltest eine JSON-Antwort mit den installierten Modellen erhalten.
Teste von einem anderen Gerät im Netzwerk. Die Verbindung sollte timeouten oder verweigert werden.
Schritt 4: Optional, Reverse Proxy vorschalten
Für mehr Sicherheit und TLS-Verschlüsselung setzt Du einen Reverse Proxy vor Ollama. Der Proxy terminiert TLS, bietet Authentifizierung und leitet Anfragen intern an Ollama weiter. Die Firewall erlaubt dann nur Port 443 für den Proxy, während Port 11434 komplett geschlossen bleibt.
Typische Stolpersteine
- SSH selbst aussperren: Die häufigste Fehlerquelle. Wenn Du die Firewall aktivierst, ohne SSH zu erlauben, verlierst Du den Zugriff auf den Server. Erlaube SSH immer als erste Regel.
- Default-Policy vergessen: Ohne eine explizite Default-Policy kann
ufwim uneindeutigen Zustand sein. Setzedeny incomingundallow outgoingvor dem Aktivieren. - Loopback blockieren: Eine zu strikte Regel kann Loopback-Verkehr blockieren, wodurch lokale Prozesse nicht mehr miteinander kommunizieren. Stelle sicher, dass
127.0.0.1immer erlaubt ist. - Regelreihenfolge ignorieren: Bei
iptablesist die Reihenfolge entscheidend. EineDROP-Regel am Anfang der Chain blockiert alles, auch wenn später eineACCEPT-Regel für denselben Port folgt. - Öffentliche IP übersehen: Wenn Dein Server eine öffentliche IP hat und Du
ufw allow 11434ohne Quell-IP ausführst, ist Ollama aus dem gesamten Internet erreichbar. Prüfe immer, ob Dein Server hinter einem Router sitzt oder direkt im Internet hängt. - Regeln nicht dauerhaft speichern:
iptables-Regeln verschwinden nach einem Neustart. Nutzeiptables-persistent, um sie zu speichern, sonst steht Dein Server nach dem nächsten Boot ohne Schutz da. - IPv6 vernachlässigen: Wenn IPv6 aktiv ist, gelten
iptables-Regeln für IPv4 nicht automatisch auch für IPv6. Konfiguriereip6tablesseparat oder nutzeufw, das beide Protokolle abdeckt. - Docker-Ports umgehen die Firewall: Docker manipuliert
iptables-Regeln direkt und kann Deine manuellen Regeln umgehen. Wenn Du Ollama in Docker betreibst, prüfe, ob der Container-Port nach außen freigegeben ist, und nutze Docker-Netzwerke statt Port-Mappings.
Hardware, Kosten und Sicherheit
Eine Firewall kostet keine zusätzlichen Hardware. Sie läuft als Software auf Deinem bestehenden Server. Die Tools ufw und iptables sind Open Source und kostenlos. Der einzige Aufwand ist Deine Zeit für die Konfiguration und regelmäßige Kontrolle.
Sicherheitstechnisch ist eine Firewall kein Allheilmittel. Sie filtert Netzwerkverkehr, schützt aber nicht vor Angriffen, die über erlaubte Ports kommen. Wenn Du Port 11434 für ein Gerät freigibst und dieses Gerät mit Malware infiziert ist, nützt die Firewall nichts. Sie ist eine Schicht in einem mehrschichtigen Sicherheitskonzept, ergänzt durch Authentifizierung, Verschlüsselung und regelmäßige Updates.
Weiterführende Links
- Sicherer Betrieb , Übersicht aller Artikel zum sicheren Betrieb von KI-Services
- Netzwerksicherheit , weitere Themen zur Netzwerkabsicherung
- Reverse Proxy , wie Du TLS und Authentifizierung vor Ollama schaltest
- Ollama Netzwerkzugriff , Details zum Netzwerkzugriff auf Ollama
- Ollama Konfiguration , alle Konfigurationsoptionen von Ollama
- Tailscale , VPN-Lösung für sicheren Remote-Zugriff
- Ubuntu , Grundlagen zum Betrieb von Ubuntu-Servern
FAQ
Was ist der Unterschied zwischen ufw und iptables?
ufw ist ein vereinfachtes Frontend, das iptables-Regeln im Hintergrund generiert. Es eignet sich für Standard-Szenarien und ist einfacher zu lesen. iptables bietet direkte Kontrolle über die Netfilter-Tabellen und Chains, erlaubt feingranularere Regeln, erfordert aber mehr Fachwissen.
Blockiert eine Firewall auch ausgehenden Verkehr?
Standardmäßig bei ufw nicht. Die Default-Policy für ausgehenden Verkehr ist allow. Du kannst sie auf deny setzen, musst dann aber jeden ausgehenden Port explizit freigeben, was den administrativen Aufwand deutlich erhöht.
Brauche ich eine Firewall, wenn Ollama auf 127.0.0.1 lauscht?
Nein. Wenn Ollama nur auf 127.0.0.1 gebunden ist, ist der Service nicht aus dem Netzwerk erreichbar. Eine Firewall-Regel für Port 11434 ist in diesem Fall unnötig. Die Firewall schützt aber andere Services auf Deinem Server, die nach außen lauschen.
Wie teste ich, ob meine Firewall-Regeln funktionieren?
Nutze curl oder nc von einem anderen Gerät aus, um zu prüfen, ob der Port erreichbar ist. Ein Timeout oder eine verweigerte Verbindung bedeutet, dass die Firewall den Verkehr blockiert. Eine erfolgreiche Antwort bedeutet, dass die Regel greift.
nc -zv 192.168.1.10 11434
Was passiert, wenn ich ufw deaktiviere?
sudo ufw disable entfernt alle aktiven Regeln aus dem Kernel und blockiert keinen Verkehr mehr. Die Regeln bleiben in der Konfiguration gespeichert und werden beim erneuten Aktivieren wiederhergestellt.
Kann ich ufw und iptables gleichzeitig nutzen?
Ja, aber mit Vorsicht. ufw generiert iptables-Regeln, und manuelle iptables-Regeln können mit diesen kollidieren. Wenn Du beide nutzt, prüfe die komplette Regelkette mit iptables -L -n -v, um sicherzustellen, dass keine widersprüchlichen Regeln existieren.
Wie sichere ich Ollama für Remote-Zugriff über das Internet?
Öffne Port 11434 nicht im Router. Nutze ein VPN wie Tailscale, das einen verschlüsselten Tunnel zwischen Deinem Gerät und dem Server aufbaut. Der Port bleibt nach außen unsichtbar, und nur authentifizierte VPN-Teilnehmer können zugreifen.
Warum ist meine ufw-Regel für Ollama wirkungslos?
Wenn Ollama in Docker läuft, kann Docker die ufw-Regeln umgehen, weil es eigene iptables-Regeln für Port-Mappings einträgt. Prüfe mit iptables -L -n -v, ob Docker den Port direkt freigegeben hat, und nutze Docker-Netzwerke statt Port-Mappings.
Müssen IPv6-Regeln separat konfiguriert werden?
Bei iptables ja, weil es nur IPv4 behandelt. Du musst ip6tables separat konfigurieren. ufw behandelt IPv4 und IPv6 gemeinsam, solange in der Datei /etc/default/ufw die Option IPV6=yes gesetzt ist.
Was kostet der Betrieb einer Firewall?
Nichts. ufw und iptables sind Open Source und auf den meisten Linux-Distributionen vorinstalliert. Der einzige Aufwand ist Deine Zeit für Konfiguration und Wartung.
Wie oft sollte ich meine Firewall-Regeln prüfen?
Alle paar Wochen oder nach jeder Änderung an Deinen Services. Entferne Regeln für Services, die Du nicht mehr nutzt, und prüfe, ob neue Services versehentlich Ports geöffnet haben.
Quellen
- Ubuntu Documentation, Uncomplicated Firewall
- Ollama Documentation, Configuration and Environment Variables
- Netfilter Project, iptables Documentation
- Tailscale Documentation, Access Controls


