PF Subnetz als Variable?

minimike

Berufsrevolutionär
Hi

Ich mach seit einer Ewigkeit mal wieder was mit PF. Man glaubt nicht was man mit der Zeit alles Vergisst :)
Bei PF kann ich ein Subnetz als Variable bennennen? Und ist das safe?

von
Code:
SRV = "{ re2.30 }"
pass  in  quick  on $SRV inet proto udp  from 192.168.232.1/24 to any port 123 keep state

nach
Code:
SRV "{ re2.30 }"
SRVNETv4 = "{ 192.168.232.1/24 }"
pass  in  quick  on $SRV inet proto udp  from $SRVNETv4 to any port 123 keep state

Bin mir da nicht sicher. Da frag ich mal besser nach :)

PS. frohes neues Jahr!
 
Ich benutze es zumindest auf FreeBSD 11.0-RELEASE-p6:

Code:
nonroutes = "{ 127.0.0.0/8, 192.168.0.0/16, 172.16.0.0/12, \
              10.0.0.0/8, 169.254.0.0/16, 192.0.2.0/24, \
              0.0.0.0/8, 240.0.0.0/4 }"

# prevent packages from and to nonroutable addresses from crossing the
# external interface:
block drop in quick on $ext_if from $nonroutes to any
block drop out log (all) quick on $ext_if from any to $nonroutes
 
Mit

Code:
pfctl -vvnf /etc/pf.conf
kannst du dir das zu generierende Regelwerk anzeigen lassen und bspw. mit einem laufenden
Code:
pfctl -sr
vergleichen
 
Nicht zwingend. Bei wenigen Adressen macht es kaum ein Unterschied. Richtig ist natürlich, dass Tabellen zu weniger Regeln expandieren, im Gegensatz zu Makros. Aber bevor dies zum Tragen kommt, sollte man sich vorher Gedanken um die Reihenfolge oder den Optimierungsfaktor machen.
 
hi

@goblin. deine 0.0.0.0/8 sollteste du nochmal ueber denken als noneroute ;)

ein macro kann man problemlos nutzen , sie wird beim laden des pf ruleset geladen und
gilt dann bis zum nächsten laden des ruleset.

wenn man nun ein hostnamen in einem macro verpackt , so wird beim laden des ruleset ( .-f )
dieser via resolver aufgelöst und die ip bleibt dann bis zum nächsten laden des ruleset.

ändert sich die ip des hostnamen ( DNS ) bekommt das ruleset es erst mit wenn es neu geladen wird.


holger
 
@goblin. deine 0.0.0.0/8 sollteste du nochmal ueber denken als noneroute ;)
Naja bei dem kurzen Ausschnitt aus der Firewall würd ich das nicht zwingend behaupten.
Am externen Interface kann man das ruhig blockieren, solange man es im internen zulässt. Falls er alles statisch vergibt ohne DHCP sehe ich dann aber auch kein Problem.
 
@goblin. deine 0.0.0.0/8 sollteste du nochmal ueber denken als noneroute ;)

Warum?
Es ist leider schon eine ziemliche Weile her, dass ich die firewall konfiguriert habe und daher weiß ich nicht mehr ganz genau im Detail, warum ich es so konfiguriert habe.
Der Kontext ist, dass die firewall meine jails vom Rest des Rechenzentrums und Internets trennt und ich deswegen nichts rauslassen will, das nicht geroutet werden soll.
Entsprechend will es nicht über die interface-Grenzen lassen. Und da es sich um jails handelt ist es wie @mogbo vermutet hat, alle internen IPs sind statisch vergeben.

Ich vermute aber, dass das jetzt zu Off-Topic wird, darum würde ich vorschlagen dass wir wenn dann per PM weiter schreiben. Aber über Tipps und Anregungen freue ich mich immer, da ich kein hauptberuflicher Administrator bin ;)
 
Zurück
Oben