shorewall6-nesting 5 nesting shorewall6 Nested Zones child-zone[:parent-zone[,parent-zone]...] Description In shorewall6-zones(5), a zone may be declared to be a sub-zone of one or more other zones using the above syntax. Where zones are nested, the CONTINUE policy in shorewall6-policy(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(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. Virtual Zones Beginning with Shorewall 4.4.5, Shorewall allows the declaration of virtual zones. A virtual zone has no definition in /etc/shorewall6/interfaces or in /etc/shorewall6/hosts. Rather, it is used as a parent zone for other zones in /etc/shorewall6/zones. Example: /etc/shorewall6/zones: #ZONE TYPE OPTIONS fw firewall net ipv6 loc virtual #Virtual Zone loc1:loc ipv6 loc2:loc ipv6 /etc/shorewall/interfaces: #ZONE INTERFACE BROADCAST OPTIONS net eth0 detect dhcp,tcpflags - eth1 detect tcpflags /etc/shorewall/hosts: #ZONE HOST(S) OPTIONS loc1 eth1:2001:19f0:feee:1::/48 loc2 eth1:2001:19f0:feee:2::/48 There are several restrictions on virtual zones: A maximum of four virtual zones may be defined. They should not be used with IMPLICIT_CONTINUE=Yes in shorewall6.conf(5). When a connection request to/from a sub-zone of a virtual zone does not match the rules for the sub-zone, the connection is compared against the rules (and policies) for the parent virtual zone. FILES /etc/shorewall6/zones /etc/shorewall6/interfaces /etc/shorewall6/hosts /etc/shorewall6/policy /etc/shorewall6/rules See ALSO shorewall6(8), shorewall6-accounting(5), shorewall6-actions(5), shorewall6-blacklist(5), shorewall6-hosts(5), shorewall6-interfaces(5), shorewall6-maclist(5), shorewall6-params(5), shorewall6-policy(5), shorewall6-providers(5), shorewall6-route_rules(5), shorewall6-routestopped(5), shorewall6-rules(5), shorewall6.conf(5), shorewall6-tcclasses(5), shorewall6-tcdevices(5), shorewall6-tcrules(5), shorewall6-tos(5), shorewall6-tunnels(5), shorewall6-zones(5)