NAME
policy - shorewall6 policy file
SYNOPSIS
/etc/shorewall6/policy
DESCRIPTION
This file defines the high-level policy for connections between zones
defined in shorewall6-zones[1](5).
Important
The order of entries in this file is important
This file determines what to do with a new connection request if we
don't get a match from the /etc/shorewall6/rules file . For each
source/destination pair, the file is processed in order until a
match is found ("all" will match any client or server).
Important
Intra-zone policies are pre-defined
For $FW and for all of the zones defined in /etc/shorewall6/zones,
the POLICY for connections from the zone to itself is ACCEPT (with
no logging or TCP connection rate limiting but may be overridden by
an entry in this file. The overriding entry must be explicit
(cannot use "all" in the SOURCE or DEST).
Similarly, if you have IMPLICIT_CONTINUE=Yes in shorewall6.conf,
then the implicit policy to/from any sub-zone is CONTINUE. These
implicit CONTINUE policies may also be overridden by an explicit
entry in this file.
The columns in the file are as follows.
SOURCE - zone|$FW|all
Source zone. Must be the name of a zone defined in
shorewall6-zones[1](5), $FW or "all".
DEST - zone|$FW|all
Destination zone. Must be the name of a zone defined in
shorewall6-zones[1](5), $FW or "all". If the DEST is a bport zone,
then the SOURCE must be "all", another bport zone associated with
the same bridge, or it must be an ipv6 zone that is associated with
only the same bridge.
POLICY -
{ACCEPT|DROP|REJECT|CONTINUE|QUEUE|NFQUEUE[(queuenumber)]|NONE}[:{default-action-or-macro|None}]
Policy if no match from the rules file is found.
If the policy is other than CONTINUE or NONE then the policy may be
followed by ":" and one of the following:
1. The word "None" or "none". This causes any default action
defined in shorewall6.conf[2](5) to be omitted for this policy.
2. The name of an action (requires that USE_ACTIONS=Yes in
shorewall6.conf[2](5)). That action will be invoked before the
policy is enforced.
3. The name of a macro. The rules in that macro will be applied
before the policy is enforced. This does not require
USE_ACTIONS=Yes.
Possible policies are:
ACCEPT
Accept the connection.
DROP
Ignore the connection request.
REJECT
For TCP, send RST. For all other, send an "unreachable" ICMP.
QUEUE
Queue the request for a user-space application such as
Snort-inline.
NFQUEUE
Queue the request for a user-space application using the
nfnetlink_queue mechanism. If a queuenumber is not given, queue
zero (0) is assumed.
CONTINUE
Pass the connection request past any other rules that it might
also match (where the source or destination zone in those rules
is a superset of the SOURCE or DEST in this policy). See
shorewall6-nesting[3](5) for additional information.
NONE
Assume that there will never be any packets from this SOURCE to
this DEST. shorewall6 will not create any infrastructure to
handle such packets and you may not have any rules with this
SOURCE and DEST in the /etc/shorewall6/rules file. If such a
packet is received, the result is undefined. NONE may not be
used if the SOURCE or DEST columns contain the firewall zone
($FW) or "all".
LOG LEVEL (Optional) - [log-level|NFLOG]
If supplied, each connection handled under the default POLICY is
logged at that level. If not supplied, no log message is generated.
See syslog.conf(5) for a description of log levels.
You may also specify NFLOG (must be in upper case). This will log
to the NFLOG target and will send to a separate log through use of
ulogd (http://www.netfilter.org/projects/ulogd/index.html).
If you don't want to log but need to specify the following column,
place "-" here.
BURST:LIMIT - [{s|d}:[[name]:]]]rate/{second|minute}[:burst]
If passed, specifies the maximum TCP connection rate and the size
of an acceptable burst. If not specified, TCP connections are not
limited. If the burst parameter is omitted, a value of 5 is
assumed.
When s: or d: is specified, the rate applies per source IP address
or per destination IP address respectively. The name may be chosen
by the user and specifies a hash table to be used to count matching
connections. If not give, the name shorewall is assumed. Where more
than one POLICY specifies the same name, the connections counts for
the policies are aggregated and the individual rates apply to the
aggregated count.
CONNLIMIT - limit[:mask]
May be used to limit the number of simultaneous connections from
each individual host to limit connections. While the limit is only
checked on connections to which this policy could apply, the number
of current connections is calculated over all current connections
from the SOURCE host. By default, the limit is applied to each host
individually but can be made to apply to networks of hosts by
specifying a mask. The mask specifies the width of a VLSM mask to
be applied to the source address; the number of current connections
is then taken over all hosts in the subnet source-address/mask.
EXAMPLE
1. All connections from the local network to the internet are allowed
2. All connections from the internet are ignored but logged at syslog
level KERNEL.INFO.
3. All other connection requests are rejected and logged at level
KERNEL.INFO.
#SOURCE DEST POLICY LOG BURST:LIMIT
# LEVEL
loc net ACCEPT
net all DROP info
#
# THE FOLLOWING POLICY MUST BE LAST
#
all all REJECT info
FILES
/etc/shorewall6/policy
SEE ALSO
shorewall6(8), shorewall6-accounting(5), shorewall6-actions(5),
shorewall6-blacklist(5), shorewall6-hosts(5), shorewall6-interfaces(5),
shorewall6-ipsec(5), shorewall6-maclist(5), shorewall6-masq(5),
shorewall6-nat(5), shorewall6-netmap(5), shorewall6-params(5),
shorewall6-policy(5), shorewall6-providers(5), shorewall6-proxyarp(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)
NOTES
1. shorewall6-zones
http://www.shorewall.net/manpages6/shorewall6-zones.html
2. shorewall6.conf
http://www.shorewall.net/manpages6/shorewall6.conf.html
3. shorewall6-nesting
http://www.shorewall.net/manpages6/shorewall6-nesting.html
[FIXME: source] 06/17/2010