Firewall Verständnisfrage

mcdaniels

Member
Feb 1, 2021
44
0
11
48
Hallo,
ich habe jetzt einige Wikiartikel und auch Youtube Videos "durch", verstehe aber die Funktionsweise der FW von Proxmox noch nicht wirklich.

Es gibt die Ebenen:
Datacenter
Host
VM

Kann ich nur für den Host selbst Regeln erstellen, die dann aber für die VMs und das Datacenter nicht gelten?

Muss die Firewall auf allen Ebenen (bei den Optionen von Datacenter / Host und VM) aktiv sein, damit sie auf der Ebene des Hosts greift?

Ich habe grade versucht für den Host alles zu droppen, außer Port 22 = SSH.

Die Firewall ist für den Host aktiv. Die Regel greift aber nicht.

Danke!

LG
 
Last edited:
Die Firewall ist für den Host aktiv. Die Regel greift aber nicht.
Ich blick da jetzt nach einem Jahr auch noch nicht ganz durch.
Du musst auf jeden fall die Firewall auf Datacenter Ebene aktivieren, sonst sind auch die Firewalls auf Node- und VM-Ebene deaktiviert, auch wenn du die z.B. auf Node-Ebene auf aktiv gestellt hast.

Was ich mich dabei frage ist, ob die Firewalls verschachtelt sind. Nehmen wir mal als Beispiel ich möchte auf einer VM TCP Port 1000 öffnen.
Dann aktiviere ich die Firewall auf VM-Ebene und erlaubt für die VM TCP Port 1000.
Die VM befindet sich ja aber auf dem Node. Muss dann auch bei dem Node die Firewall aktiviert haben mit einer entsprechenden Regel da TCP Port 1000 durchzulassen, damit Daten überhaupt erst vom Internet über die Node-Firewall zur VM-Firewall kommen?
Und die gleiche Frage dann halt nochmal für die Datacenter-Firewall. Die muss ja definitiv aktiv sein, wenn man überhaupt irgendwie Firewalls nutzen will. Muss man dann aber auf Datacenter-Ebene auch eine Regel für TCP Port 1000 erstellen, damit die Daten es überhaupt erst zum Node und zur VM schaffen?
 
Last edited:
  • Like
Reactions: mcdaniels
Sobald Du im datacenter die Firewall aktiv hast kannst Du sowohl für den Host/die Node als auch die VMs und Container einzeln Firewall aktivieren und Regeln erstellen. Du musst nicht alles auf der Node machen um es auf der VM zu haben. Achtet nur darauf das die default Regeln unter Datacenter eingestellt für den Host/die Node gelten. Aber nicht für die VMs oder die Container. Da muss man noch mal extra default Regeln setzen. Bzw sind ja schon gesetzt, kann man aber ändern.
 
Die Default Policy "DROP" (ersichtlich unter den Firewalloptions des Datacenter gilt, sobald ich die Firewall auf dem Datacenter aktiv schalte, selbst wenn ich auf dem Datacenter noch keine Regeln definiert habe?

Ich nehme an, zuerst ist eine DROP all Regel zu definieren und dann die Regeln, die Traffic erlauben?
 
Last edited:
Grundsätzlich: Die Firewall unterscheidet zwischen Regeln die für die PVE hosts selbst gelten (iptables INPUT) und Regeln für die Gäste (iptables FORWARD).

Regeln die in der Datacenter Ebene erstellt werden, gelten für alle Hosts. Wenn man nun viele gleiche Regeln für Gäste hat, bieten sich die IPSets an mit denen man auf DC Ebene Gruppen von Regeln erstellen kann und diese dann beim jeweiligen Gast einfach nur hinzufügen muss und somit nicht jede Regel einzeln wieder erstellen muss.

Es werden einige Ausnahmen als Default gesetzt um die Kommunikation innerhalb des Cluster zu garantieren ( https://pve.proxmox.com/pve-docs/pve-admin-guide.html#pve_firewall_default_rules ). Genauso sind die Management Ports innerhalb des Cluster Netzwerks offen. Wenn man von einem anderen Netzwerk aus den Cluster verwalten will, muss man sich die entsprechenden Ports (8006, 5900-5999 noVNC, SSH, Spice usw) freischalten. Hinter dem Link sind diese aufgelistet.
Die Default Policy "DROP" (ersichtlich unter den Firewalloptions des Datacenter gilt, sobald ich die Firewall auf dem Datacenter aktiv schalte, selbst wenn ich auf dem Datacenter noch keine Regeln definiert habe?
Sollte sobald die FW auch auf Host Ebene aktiviert ist.
 
@aaron: Heißt aber dann auch, dass ich keine separate DROP ALL Regel brauche, sondern nur die Regeln setze, die Traffic erlauben? --> Davon ausgehend, dass ich den Host von einem anderen Netzwerk administriere.
 
Genau. Wenn INPUT Policy in den Firewall->Options auf Drop gesetzt ist (Default).

Du kannst das auch testen, indem du zum Beispiel mit nc -zv <ip> <port> (für TCP) schaust, ob du eine Verbindung auf dem Port aufmachen kannst. Aber Vorsicht, wenn kurz davor schon eine Verbindung da war, kann sein, dass diese noch als aktiv angesehen wird und die FW Regeln nicht sofort greifen.
 
  • Like
Reactions: mcdaniels
Perfekt! Das hat funktioniert!

Datacenterfirewall aktiv mit gesetzten ALLOW-Regeln, Host Firewall aktiv (ohne Regeln) & VMs aktiv (ohne Regeln). Heißt also: Das gilt mir jetzt nur für Datacenter und die Hosts.
 
Kurze Frage nochmals: Wenn ich bei der Firewall nicht explizit eine Source angeben will, sondern ALLE meine, muss ich dann bei der Source etwas eingeben, oder diese frei lassen?
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!