I am trying to recreate an existing firewall configuration created in
Firewall Builder using Firewalld. It runs on a router that controls
traffic in and out of our company network. The existing configuration
has rules that permit traffic to be relayed out on specified ports for
specified addresses on the internal network. For example: a list of
addresses are allowed to get out on ports 80 and 443 for http and https
traffic, any other internal machines are denied. I currently have the
external interface in the external zone, and the internal interface in
the public zone, with the following configuration:
external (active)
target: DROP
icmp-block-inversion: no
interfaces: ens2f1
sources:
services:
ports:
protocols:
masquerade: yes
forward-ports:
source-ports:
icmp-blocks:
rich rules:
public (active)
target: %%REJECT%%
icmp-block-inversion: no
interfaces: ens2f0
sources:
services:
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
I have found examples of direct interface rules for allowing traffic
out, but is there any other way (rich rule or something else I'm
overlooking) to unblock traffic like the log excerpt below? As far as I
can tell a rich rule with an element of service and an action of accept
only allows traffic to the router, not passing through the router.
kernel: [21251.995383] FWDI_public_REJECT: IN=ens2f0 OUT=ens2f1
MAC=00:1e:67:7c:95:6c:f8:16:54:37:3a:e3:08:00 SRC=192.168.10.195
DST=xx.xx.xx.xx LEN=60 TOS=0x00 PREC=0x00 TTL=63 ID=35016 DF PROTO=TCP
SPT=45504 DPT=80 WINDOW=29200 RES=0x00 SYN URGP=0