On Mon, May 7, 2018 at 10:40 AM, Martin Gignac <martin.gig...@gmail.com> wrote:
> In Juniper SRXes and Netscreen firewalls one defines security policies
> (firewall rules) according to a "from" security zone, and a "to"
> security zone. Rules within each "from-to" combo can then focus on
> allowing or blocking individual IP subnets if required.
...

> I am looking to define firewall policies on OpenBSD where I can
> enforce something like "all traffic from lab01 to lab02 is allowed by
> default, but all traffic from lab02 to to lab01 is denied by default".
> In this case lab01 and lab02 are bound to different interfaces
> (obviously), but behind each interface is another router to which are
> attached a changing number of subnets, so I want to avoid having to
> update subnet lists in my pf rules constantly. This situation would be
> simple to deal with in Juniper/Netscreen or Linux, but I'm having a
> hard time figuring out how to achieve a similar result in pf. I
> thought about passing all traffic on ingress on the lab01 and lab02
> interfaces, tagging that traffic with a "from_lab0x" tag, and then
> having outbound rules take action based on the relevant interface and
> tag, like so:
>
>   lab01 = em1
>   lab02 = em2
>
>   set state-policy if-bound
>
>   block
>
>   pass in on $lab01 tag from_lab01
>   pass in on $lab02 tag from_lab02
>
>   pass in on $lab02 tagged from_lab01

You could also replace the above with "pass in on $lab02 received-on $lab01".

>   block out on $lab01 tagged from_lab02
>
> Does this look like it makes sense? Is using an 'if-bound'
> state-policy ill-advised? Are there any obvious problems with this
> method? If so, is there a better way to achieve my goal?

Reply via email to