Umleitung von Ports basierend auf Domänennamen über pf

Umleitung von Ports basierend auf Domänennamen über pf

Wir haben eine öffentliche IP auf einem Rechner (Rechner1), auf dem eine PF-Firewall läuft. Hinter dieser Firewall befinden sich mehrere Rechner in einem LAN.

Auf Maschine2 im LAN läuft ein Dienst auf Port 443. Um diesen Dienst auch außerhalb des LAN (Internet) verfügbar zu machen, leiten wir per pf auf Maschine1 um.

rdr on $ext_if proto tcp from any to $ext_addr port 443 -> SOMEIP port 443

Jetzt habe ich eine Maschine3 im LAN, auf der auch ein Dienst auf Port 443 läuft.

Wir haben Domänennamen wie machine2.example.com und machine3.example.com eingerichtet, die beide auf die öffentliche IP auf einer Maschine1 verweisen.

Gibt es eine Möglichkeit, pf „domänennamenbewusst“ zu machen, um herauszufinden, an welchen Rechner mit Dienst auf 443 weitergeleitet werden soll? Das Ändern der Ports auf Rechnern im LAN sollte keine Option sein.

Antwort1

Basierend auf der Dokumentation für OpenBSDs PF werden vollqualifizierte Domänennamen unterstützt.

In der Dokumentation wird src_addr, dst_addrFolgendes erwähnt:

Ein vollqualifizierter Domänenname, der beim Laden des Regelsatzes über DNS aufgelöst wird. Alle resultierenden IP-Adressen werden in die Regel eingesetzt.`

Quelle:https://www.openbsd.org/faq/pf/filter.html

Antwort2

Obwohl ich nicht glaube, dass iptables Anfragen nach Domänen filtern kann, klingt das nach einem perfekten Job dafür nginx. Wenn Sie es auf pfSense installieren können, können Sie es als Proxy für andere Server basierend auf verschiedenen Domänen-/IP-Konfigurationen einrichten. Es kann bei Bedarf sogar als Lastenausgleich fungieren und Sie müssen Ihre Firewall nicht konfigurieren.

Alternativ können Sie in einer der VMs einen separaten Nginx-Proxyserver einrichten. Ihre Firewall leitet dann den gesamten Datenverkehr über die Ports 80 und 443 zu dieser VM um, die dann Nginx verwendet, um Anfragen an bestimmte VMs weiterzuleiten. Dies kann auch auf jeder der vorhandenen VMs eingerichtet werden.

verwandte Informationen