NAME

nesting - shorewall6 Nested Zones

SYNOPSIS

child-zone[:parent-zone[,parent-zone]...]

DESCRIPTION

In shorewall6-zones[1](5), a zone may be declared to be a sub-zone of
one or more other zones using the above syntax. The child-zone may be
neither the firewall zone nor a vserver zone. The firewall zone may not
appear as a parent zone, although all vserver zones are handled as
sub-zones of the firewall zone.
Where zones are nested, the CONTINUE policy in shorewall6-policy[2](5)
allows hosts that are within multiple zones to be managed under the
rules of all of these zones.

EXAMPLE

/etc/shorewall6/zones:
#ZONE TYPE OPTION
fw firewall
net ipv6
sam:net ipv6
loc ipv6
/etc/shorewall6/interfaces:
#ZONE INTERFACE BROADCAST OPTIONS
- eth0 detect blacklist
loc eth1 detect
/etc/shorewall6/hosts:
#ZONE HOST(S) OPTIONS
net eth0:[::\]
sam eth0:[2001:19f0:feee::dead:beef:cafe]
/etc/shorewall6/policy:
#SOURCE DEST POLICY LOG LEVEL
loc net ACCEPT
sam all CONTINUE
net all DROP info
all all REJECT info
The second entry above says that when Sam is the client, connection
requests should first be processed under rules where the source zone is
sam and if there is no match then the connection request should be
treated under rules where the source zone is net. It is important that
this policy be listed BEFORE the next policy (net to all). You can have
this policy generated for you automatically by using the
IMPLICIT_CONTINUE option in shorewall6.conf[3](5).
Partial /etc/shorewall6/rules:
#ACTION SOURCE DEST PROTO DEST PORT(S)
...
ACCEPT sam loc:2001:19f0:feee::3 tcp ssh
ACCEPT net loc:2001:19f0:feee::5 tcp www
...
Given these two rules, Sam can connect with ssh to 2001:19f0:feee::3.
Like all hosts in the net zone, Sam can connect to TCP port 80 on
2001:19f0:feee::5. The order of the rules is not significant.