shorewall-policy5policyShorewall policy file/etc/shorewall/policyDescriptionThis file defines the high-level policy for connections between
zones defined in shorewall-zones(5).The order of entries in this file is importantThis file determines what to do with a new connection request if
we don't get a match from the /etc/shorewall/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).Intra-zone policies are pre-definedFor $FW and for all of the zones defined in /etc/shorewall/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 shorewall.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|allSource zone. Must be the name of a zone defined in shorewall-zones(5), $FW or
"all".DEST -
zone|$FW|allDestination zone. Must be the name of a zone defined in shorewall-zones(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 ipv4
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 neither CONTINUE nor NONE then the policy may
be followed by ":" and one of the following:The word "None" or "none". This causes any default action
defined in shorewall.conf(5) to be
omitted for this policy.The name of an action (requires that USE_ACTIONS=Yes in
shorewall.conf(5)).
That action will be invoked before the policy is
enforced.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:
ACCEPTAccept the connection.DROPIgnore the connection request.REJECTFor TCP, send RST. For all other, send an "unreachable"
ICMP.QUEUEQueue the request for a user-space application such as
Snort-inline.NFQUEUEQueue the request for a user-space application using the
nfnetlink_queue mechanism. If a
queuenumber is not given, queue
zero (0) is assumed.CONTINUEPass 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 shorewall-nesting(5) for
additional information.NONEAssume that there will never be any packets from this
SOURCE to this DEST. Shorewall will not create any
infrastructure to handle such packets and you may not have any
rules with this SOURCE and DEST in the /etc/shorewall/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|ULOG|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 ULOG or NFLOG (must be in upper case).
This will log to the ULOG or 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 or 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.ExampleAll connections from the local network to the internet are
allowedAll connections from the internet are ignored but logged at
syslog level KERNEL.INFO.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 infoFILES/etc/shorewall/policySee ALSOshorewall(8), shorewall-accounting(5), shorewall-actions(5),
shorewall-blacklist(5), shorewall-hosts(5), shorewall-interfaces(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)