Provided by: shorewall_4.4.21-1_all bug

NAME

       exclusion - Exclude a set of hosts from a definition in a shorewall
       configuration file.

SYNOPSIS

       !address-or-range[,address-or-range]...

       !zone-name[,zone-name]...

DESCRIPTION

       The first form of exclusion is used when you wish to exclude one or
       more addresses from a definition. An exclaimation point is followed by
       a comma-separated list of addresses. The addresses may be single host
       addresses (e.g., 192.168.1.4) or they may be network addresses in CIDR
       format (e.g., 192.168.1.0/24). If your kernel and iptables include
       iprange support, you may also specify ranges of ip addresses of the
       form lowaddress-highaddress

       No embedded whitespace is allowed.

       Exclusion can appear after a list of addresses and/or address ranges.
       In that case, the final list of address is formed by taking the first
       list and then removing the addresses defined in the exclusion.

       Beginning in Shorewall 4.4.13, the second form of exclusion is allowed
       after all and any in the SOURCE and DEST columns of
       /etc/shorewall/rules. It allows you to omit arbitrary zones from the
       list generated by those key words.

           Warning
           If you omit a sub-zone and there is an explicit or explicit
           CONTINUE policy, a connection to/from that zone can still be
           matched by the rule generated for a parent zone.

           For example:

           /etc/shorewall/zones:

               #ZONE          TYPE
               z1             ip
               z2:z1          ip
               ...

           /etc/shorewall/policy:

               #SOURCE         DEST          POLICY
               z1              net           CONTINUE
               z2              net           REJECT

           /etc/shorewall/rules:

               #ACTION         SOURCE        DEST        PROTO         DEST
               #                                                       PORT(S)
               ACCEPT          all!z2        net         tcp           22

           In this case, SSH connections from z2 to net will be accepted by
           the generated z1 to net ACCEPT rule.

       In most contexts, ipset names can be used as an address-or-range.
       Beginning with Shorewall 4.4.14, ipset lists enclosed in +[...] may
       also be included (see shorewall-ipsets[1] (5)). The semantics of these
       lists when used in an exclusion are as follows:

       ·   !+[set1,set2,...setN] produces a packet match if the packet does
           not match at least one of the sets. In other words, it is like NOT
           match set1 OR NOT match set2 ... OR NOT match setN.

       ·   +[!set1,!set2,...!setN] produces a packet match if the packet does
           not match any of the sets. In other words, it is like NOT match
           set1 AND NOT match set2 ... AND NOT match setN.

EXAMPLES

       Example 1 - All IPv4 addresses except 192.168.3.4
           !192.168.3.4

       Example 2 - All IPv4 addresses except the network 192.168.1.0/24 and
       the host 10.2.3.4
           !192.168.1.0/24,10.1.3.4

       Example 3 - All IPv4 addresses except the range
       192.168.1.3-192.168.1.12 and the network 10.0.0.0/8
           !192.168.1.3-192.168.1.12,10.0.0.0/8

       Example 4 - The network 192.168.1.0/24 except hosts 192.168.1.3 and
       192.168.1.9
           192.168.1.0/24!192.168.1.3,192.168.1.9

       Example 5 - All parent zones except loc
           any!loc

FILES

       /etc/shorewall/hosts

       /etc/shorewall/masq

       /etc/shorewall/rules

       /etc/shorewall/tcrules

SEE ALSO

       shorewall(8), shorewall-accounting(5), shorewall-actions(5),
       shorewall-blacklist(5), shorewall-hosts(5), shorewall_interfaces(5),
       shorewall-ipsets(5), shorewall-maclist(5), shorewall-masq(5),
       shorewall-nat(5), shorewall-netmap(5), shorewall-params(5),
       shorewall-policy(5), shorewall-providers(5), shorewall-proxyarp(5),
       shorewall-route_rules(5), shorewall-routestopped(5),
       shorewall-rules(5), shorewall.conf(5), shorewall-secmarks(5),
       shorewall-tcclasses(5), shorewall-tcdevices(5), shorewall-tcrules(5),
       shorewall-tos(5), shorewall-tunnels(5), shorewall-zones(5)

NOTES

        1. shorewall-ipsets
           http://www.shorewall.net/manpages/shorewall-ipsets.html

[FIXME: source]                   07/10/2011            SHOREWALL-EXCLUSION(5)