Einschränkung für eine Portweiterleitung

Forum zum Thema Firewall

Moderator: Lancom-Systems Moderatoren

Benutzeravatar
Dariusz
Beiträge: 40
Registriert: 03 Mai 2018, 08:54

Einschränkung für eine Portweiterleitung

Beitrag von Dariusz »

Hallo,

ein Router von uns hat eine Portweiterleitung: HTTP/S von einer WAN IP auf eine interne IP.

Ich möchte diese Weiterleitung einschränken und nur von einer bestimmten externen IP erlauben.

Was ist hier die beste Lösung?

Ich habe versucht eine Firewallregel zu erstellen, aber irgendwie wird diese einfach ignoriert.
Benutzeravatar
Jirka
Beiträge: 5225
Registriert: 03 Jan 2005, 13:39
Wohnort: Ex-OPAL-Gebiet
Kontaktdaten:

Re: Einschränkung für eine Portweiterleitung

Beitrag von Jirka »

Vielleicht hast Du keine Deny-All-Regel in der Firewall?
Oder keine Regel, die zumindest sämtlichen eingehenden Traffic dieser Portweiterleitung blockiert und dann in Zusammenhang mit Deiner Erlauben-Regel dazu führt, dass alles andere draußen bleibt?
Benutzeravatar
Dariusz
Beiträge: 40
Registriert: 03 Mai 2018, 08:54

Re: Einschränkung für eine Portweiterleitung

Beitrag von Dariusz »

Hallo Jirka,

daran wird es liegen, danke.

Habe gehofft, dass es eine andere/einfachere Möglichkeit gibt, bevor ich alles blocke, nur um diese eine Portweiterleitung einzuschränken.
Danach werden sicher viele andere Sachen nicht funktionieren, bis passende Regeln erstellt werden.
Dr.Zett
Beiträge: 89
Registriert: 02 Apr 2019, 11:04

Re: Einschränkung für eine Portweiterleitung

Beitrag von Dr.Zett »

Servus Dariusz,

Du sollst ja auch nicht alles blockieren. :wink:

Erstelle zwei Regeln. Die erste blockt allen WAN-seitigen Traffic auf den gewünschten Port. Und mit der zweiten Regel erlaubst du nur der gewünschten externen IP-Adresse das Portforwarding.

Viele Grüße

Dr. Zett
Benutzeravatar
Jirka
Beiträge: 5225
Registriert: 03 Jan 2005, 13:39
Wohnort: Ex-OPAL-Gebiet
Kontaktdaten:

Re: Einschränkung für eine Portweiterleitung

Beitrag von Jirka »

Hallo Dariusz,

ich habe oder geschrieben!
Die Antwort war zwar insgesamt kurz, dafür aber auch direkt. Ich meine da Du keine genauen Angaben zu Deiner Firewall-Regel (und dem gesamten Regelwerk) gemacht hast, bin ich davon ausgegangen, dass Du eine Firewall-Regel schon erstellt bekommst und Dir jetzt nur der richtige Ansatz fehlt und den hatte ich gehofft damit geliefert zu haben. Genau genommen hätte ich zu dem letzten Satz, dass das Deine Firewall-Regel ignoriert wird, noch schreiben müssen, dass sie eben nicht ignoriert wird, sondern offenbar nicht zutrifft. Es ist ja auch eine Erlauben-Regel (da Du nur von einer Regel geschrieben hattest, war das anzunehmen).
Alles klar?
Benutzeravatar
Dariusz
Beiträge: 40
Registriert: 03 Mai 2018, 08:54

Re: Einschränkung für eine Portweiterleitung

Beitrag von Dariusz »

Jirka & Dr.Zett,

danke! Das war auch mein gedanke, dass es so funktionieren muss.

Als ich schrieb, dass es nicht funktioniert, hatte ich folgende Regel erstellt:

Bild

Da scheint es noch einem Fehler zu geben, weil bereits die erste Regel nicht greift. :-/
Benutzeravatar
Jirka
Beiträge: 5225
Registriert: 03 Jan 2005, 13:39
Wohnort: Ex-OPAL-Gebiet
Kontaktdaten:

Re: Einschränkung für eine Portweiterleitung

Beitrag von Jirka »

Ok, jetzt kommen wir der Sache doch langsam näher.
Bei beiden Regeln muss dringend Quell-Dienst weg. Und bei der derzeit oberen Regel muss auch noch die Quelle weg, also auf beliebig. Dann sollte die Regel (von alleine) nach unten unter die derzeit zweite Regel sortiert sein, die Erlauben-Regel im Zweifel also eher greifen als die Verbieten-Regel.
Ach ja, bitte auch bei beiden Regeln den Haken bei Weitere Regeln beachten, nachdem diese Regel zutrifft rausnehmen.
Benutzeravatar
Dariusz
Beiträge: 40
Registriert: 03 Mai 2018, 08:54

Re: Einschränkung für eine Portweiterleitung

Beitrag von Dariusz »

Ich habe euch seeeeeeehr lieb!!!11

Alles funktioniert bis jetzt wie gewünscht. VIELEN DANK! :M
overcast37
Beiträge: 73
Registriert: 30 Okt 2021, 09:26

Re: Einschränkung für eine Portweiterleitung

Beitrag von overcast37 »

Dr.Zett hat geschrieben: 20 Feb 2023, 19:39 Du sollst ja auch nicht alles blockieren. :wink:

Erstelle zwei Regeln. Die erste blockt allen WAN-seitigen Traffic auf den gewünschten Port. Und mit der zweiten Regel erlaubst du nur der gewünschten externen IP-Adresse das Portforwarding.
Hallo Dr. Zett,
ich möchte mich hier kurz anhängen;
- funktioniert die Firewallregel auch für IP Ranges?
- wäre die Reihenfolge wie im Code beschrieben richtig (allow oben, deny unten)?


Hintergrund:
Ich habe Port 443 (und temporär 80 für Lets Encrypt) geöffnet und an meinen NAS weitergeleitet. Dort verteilt ein Reverse Proxy die Anfragen nach Subdomain an die jeweiligen NAS-internen Ports.
Auf dem NAS habe ich bereits eine, m.M.n. gute, Firewallkonfiguration (nur die IP Ranges von Cloudlfare werden zugelassen), jedoch nicht am Router, dort ist außer dem Standard WINS-Eintrag nichts hinterlegt.
Zusätzlich habe ich über Cloudflare selbst noch Geoblocking etc. für die Domain eingerichtet - was ja aber nicht hilft, wenn jemand direkt an der WAN IP ankommt, dort greift dann nur die NAS Firewall.

Code: Alles auswählen

Name:     DENY_443 (2. Regel?)
Aktion:   zurückweisen
Quelle:   alle Stationen
Ziel:     alle Stationen
Dienste:  TCP, Zielport 443

Name:     ALLOW_443 (1. Regel?)
Aktion:   übertragen
Quelle:   103.21.244.0/22
Ziel:     IP_NAS-Reverse-Proxy
Dienste:  TCP, Zielport 443
Vielen Dank.

PS: Wenn ich zusätzlich eine :80 Weiterleitung für Let's Encrypt haben möchte muss ich außerdem im VPN Menü "Ipsec-over-HTTPS annehmen" deaktivieren, sehe ich das richtig?
backslash
Moderator
Moderator
Beiträge: 7010
Registriert: 08 Nov 2004, 21:26
Wohnort: Aachen

Re: Einschränkung für eine Portweiterleitung

Beitrag von backslash »

Hi overcast37,
funktioniert die Firewallregel auch für IP Ranges?
eine Firewallregel funktioniert mit allem, was man in der Firewall konfigurieren kann - also auch IP-Rages.
- wäre die Reihenfolge wie im Code beschrieben richtig
in welchem Code? in dem unten? nein, da ist es genau falsch herum, aber zumidenst die "Numerierung" stimmt
(allow oben, deny unten)
genau so ist es richtg: erst die Allow-Regel, dann die Deny-Regel. Das sortiert die Firewall aber schon richtig solange du nicht explizit Regelprioritäten vergibst.
Wenn ich zusätzlich eine :80 Weiterleitung für Let's Encrypt haben möchte muss ich außerdem im VPN Menü "Ipsec-over-HTTPS annehmen" deaktivieren, sehe ich das richtig?
nein... zum einen nutzt "Ipsec-over-HTTPS annehmen" den Port 443, zum anderen klemmt ein Portforwarding die internen Dienste ab...

Gruß
Backslash
overcast37
Beiträge: 73
Registriert: 30 Okt 2021, 09:26

Re: Einschränkung für eine Portweiterleitung

Beitrag von overcast37 »

Vielen Dank Backslash.

Das mit Port 80 hatte ich in einem anderen Thema zu Port Forwarding gelesen und war mit daher nicht sicher. (Fand es auch nicht logisch, aber man weiß ja nie).

Letzte Frage: Kann ich alle IP Ranges in eine Regel, getrennt durch ein Komma, packen oder benötigt es für jede Range eine eigene Regel?
backslash
Moderator
Moderator
Beiträge: 7010
Registriert: 08 Nov 2004, 21:26
Wohnort: Aachen

Re: Einschränkung für eine Portweiterleitung

Beitrag von backslash »

Hi overcast37
Letzte Frage: Kann ich alle IP Ranges in eine Regel, getrennt durch ein Komma, packen oder benötigt es für jede Range eine eigene Regel?
Wenn du das mit LANconfig machst, kannst du die Ranges einfach hinzufügen... LANconfig bereitet das dann schon richtig auf.

Machst du das auf dem CLI oder in der WEBconfig, dann mußt du dich mit der Syntax auseinandersetzen... Ranges werden dabei als %A<erste-Adresse>-<zweiteAdresse> angegeben, z.B. %A192.168.1.3-192.168.1.10. Davon kannst du auch mit Space getrennt mehrer hintereinander hängen. Problematisch wird es, wenn der Platz in der Regel nicht ausreicht...

Dann kannst du als Erstes auf die Objekt-Tabelle (/Setup/IP-Router/Firewall/Objects) ausweichen und die dort ein Objekt mit den Adressen definieren, das du dann in der Regel referenzierst:

Code: Alles auswählen

Name                              Description
==================================----------------------------------------------------------------
RANGE                             %A192.168.1.3-192.168.1.10 %A192.168.2.3-192.168.2.10 
In der Regel kannst du dann das Objekt "RANGE" referenzieren und hast alle Ranges in die Regel aufgenommen...


Wenn dann der Platz in der Objekbeschreibung nicht ausreicht, dann kannst du weitere Objekte definieren, die du dann in der Objektbeschreibung referenzierst:

Code: Alles auswählen

Name                              Description
==================================----------------------------------------------------------------
RANGE-910                         %A192.168.9.3-192.168.9.10 %A192.168.2.3-192.168.10.10
RANGE-78                          %A192.168.7.3-192.168.7.10 %A192.168.2.3-192.168.8.10 RANGE-910
RANGE-56                          %A192.168.5.3-192.168.5.10 %A192.168.5.3-192.168.5.10 RANGE-78
RANGE-34                          %A192.168.3.3-192.168.3.10 %A192.168.4.3-192.168.4.10 RANGE-56
RANGE                             %A192.168.1.3-192.168.1.10 %A192.168.2.3-192.168.2.10 RANGE-34
Dabei mußt du beachten, daß du nichts referenzieren kannst, was nicht vorher definiert wurde (daher auch die "absteigende" Reihenfolge der Objekte)

Gruß
Backslash
overcast37
Beiträge: 73
Registriert: 30 Okt 2021, 09:26

Re: Einschränkung für eine Portweiterleitung

Beitrag von overcast37 »

Ah, ich verstehe. Das mit den Objekten hat Charme! Ich würde es jedoch in LANconfig erstellen.

In LANconfig kann ich die IP dann auch wirklich so 108.162.192.0/18 eingeben?
Im WEBconfig wäre diese Range schon mühselig, 108.162.192.0 mit wildcard mask 0.0.63.255.

EDIT:
Ich habe es im LANconfig nun selbst gesehen und es hat einwandfrei funktioniert die einzelnen Stationen hinzuzufügen.
Firewall_Cloudflare-Stationen.png

Die Konfiguration sollte so nun passen, oder?
Alle Verbindungen die nicht von Cloudflare sind werden auf allen Ports geblockt.
Die Cloudflare IPs werden aus 80/443 an das Ziel mit 80/443 weitergeleitet.
Firewall_Cloudflare.png


EDIT2: Die erste Konfiguration hat mir bei nmap noch immer den 443 als offen angezeigt. Jetzt ist er geschlossen und von Cloudflare kann ich darauf zugreifen.
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
overcast37
Beiträge: 73
Registriert: 30 Okt 2021, 09:26

Re: Einschränkung für eine Portweiterleitung

Beitrag von overcast37 »

Damit ich nicht zu viele Edits machen muss, ich glaube jetzt habe ich es raus.
Bei Allow konnte ich noch das Ziel richtig setzen und dem Zieldienst noch die IP des NAS hinzufügen.
Aus öffentlichen Netzen welche nicht bei Allow sind habe ich nun keine offenen Ports mehr :D
Bei Deny musste ich das Localnet auswählen, wenn es auf Alle steht funktionieren Websites nicht.
InkedFirewall_Cloudflare.jpg

Guten Morgen, ein EDIT noch:
Als Ziel bei 'Deny' habe ich nun auch die IP des Port Forwardings eingetragen, da die vorherige Regel die netzwerkinterne Kommunikation blockiert hat (bspw. Zugriff auf Geräte bis Browser von 192.168.x zu 10.30.x). Ich weiß nicht weshalb, da die Regel die Route eigentlich nicht genommen hat, aber war halt so.

Ich hätte auch gerne die MAC Adresse des NAS als Ziel eingetragen, aber hier hat die Firewall sich beschwert und um sofortige Korrektur gebeten - vielleicht war die Formatierung falsch? (xx:yy:zz)?

Anhand was ordnet sich die Liste der Regeln selbstständig an? Wenn ich bei Allow 'Synology' entferne rutscht die Deny über die Allow.
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
backslash
Moderator
Moderator
Beiträge: 7010
Registriert: 08 Nov 2004, 21:26
Wohnort: Aachen

Re: Einschränkung für eine Portweiterleitung

Beitrag von backslash »

Hi overcast37,
Ich hätte auch gerne die MAC Adresse des NAS als Ziel eingetragen, aber hier hat die Firewall sich beschwert und um sofortige Korrektur gebeten - vielleicht war die Formatierung falsch? (xx:yy:zz)?
nein... MAC-Adressen können nur in der Quelle angegeben werden. Im Ziel machen sie keinen Sinn, denn derjenige, der auf das Gerät zugreifen will muß ja dessen IP-Adresse kennen bzw. in deinem Fall läuft das über das Portforwarding. Damit ist die Ziel-IP immer "konstant".
Anhand was ordnet sich die Liste der Regeln selbstständig an?

das Spezifischste steht oben, das Allgemeinste unten, bei gleichen Adressen und Ports ist "Deny" stärker als "Accept"
Wenn ich bei Allow 'Synology' entferne rutscht die Deny über die Allow.
selbst wenn du in der Deny-Regel im Ziel die IP-Adresse des Servers eingetragen hast, ist "IP-Netzwerke" spezieller als "beliebig", weshalb die Allow-Regel weiterhin über der Deny-Regel stehen sollte.

Aber die Sortierung der Regeln in der Konfig ist nur ein Hinweis auf die tatsächlichen Filter,die aus den Regeln erstellt werden. Dabei wird die Regel an die Position des ersten aus ihr erzeugten Filters geschoben
Die Filter kannst du dir im CLI über das Kommando "show filter" anschauen bzw. in der WEBconfig unter Extras -> LCOS-Menübaum -> Status -> IP-Router -> Filter-List einsehen. Diese Liste wird "von oben nach unten" durchlaufen und der erste passende Filter wird ausgeführt...

Gruß
Backslash
Antworten