pf: Ausgehenden Traffic auf Gateway filtern

schwerdy

Member
Hallo Leute,

Ich möchte einen Router/Gateway mit pf aufsetzen. Grundsätzlich möchte ich eine genaue Kontrolle über ein- und ausgehenden Traffic haben, desshalb steht bei mir oben:

Code:
block all
pass quick on lo0 all

Um den Traffic, der durchgeroutet werden soll zu erlauben schreibe ich desshalb beispielsweise:
Code:
pass in quick on $int_if1 proto tcp from $int_if1:network to any port { 22, 53, 80 } flags S/SA modulate state

und damit das ganze wirklich funktioniert steht ganz am Ende meiner Konfigurationsdatei
Code:
pass out on $ext_if proto tcp from any modulate state flags S/SA

Hierbei ergeben sich zwei Probleme, die ich vermeiden möchte:
- Durch die Regel am Ende darf der Gateway uneingeschränkt TCP Verbindungen übers $ext_if aufbauen!
- Durch die Regel in der Mitte darf jeder im ersten internen Netz SSH Verbindungen auf die Firewall machen.

Ich suche nun eine möglichst elegante Lösung dafür. Am besten sowas wie
Code:
 pass out on $ext_if proto tcp from any except { $int_if1, $int_if2, $ext_if } modulate state
... nur dass es das "except" halt nicht gibt...

Danke für eu're Hilfe!
 
Hallo schwerdy,

eine Möglichkeit wäre:

Für Problem 2: Nach der allgemeinen block Regel:
Code:
block in quick on $int_if1 proto tcp from $int_if1:network to $int_if1 port ssh flags S/SA

Für Problem 1: Regel erweitern:
Code:
pass out on $ext_if proto tcp from any to any port { 22, 53, 80 } flags S/SA modulate state
 
Zurück
Oben