mirror of
https://gitlab.com/shorewall/code.git
synced 2024-11-22 15:43:30 +01:00
d904a2de86
Signed-off-by: Tom Eastep <teastep@shorewall.net>
95 lines
2.5 KiB
Plaintext
95 lines
2.5 KiB
Plaintext
#
|
|
# Shorewall version 4 - Reject Action
|
|
#
|
|
# /usr/share/shorewall/action.Reject
|
|
#
|
|
# The default REJECT action common rules
|
|
#
|
|
# This action is invoked before a REJECT policy is enforced. The purpose
|
|
# of the action is:
|
|
#
|
|
# a) Avoid logging lots of useless cruft.
|
|
# b) Ensure that certain ICMP packets that are necessary for successful
|
|
# internet operation are always ACCEPTed.
|
|
#
|
|
# The action accepts five optional parameters:
|
|
#
|
|
# 1 - 'audit' or '-'. Default is '-' which means don't audit in builtin
|
|
# actions.
|
|
# 2 - Action to take with Auth requests. Default is REJECT or A_REJECT,
|
|
# depending on the setting of the first parameter.
|
|
# 3 - Action to take with SMB requests. Default is REJECT or A_REJECT,
|
|
# depending on the setting of the first parameter.
|
|
# 4 - Action to take with required ICMP packets. Default is ACCEPT or
|
|
# A_ACCEPT depending on the first parameter.
|
|
# 5 - Action to take with late UDP replies (UDP source port 53). Default
|
|
# is DROP or A_DROP depending on the first parameter.
|
|
#
|
|
# IF YOU ARE HAVING CONNECTION PROBLEMS, CHANGING THIS FILE WON'T HELP!!!!!!!!!
|
|
###############################################################################
|
|
FORMAT 2
|
|
#
|
|
# The following magic provides different defaults for $2 thru $5, when $1 is
|
|
# 'audit'.
|
|
#
|
|
BEGIN PERL;
|
|
use Shorewall::Config;
|
|
|
|
my ( $p1, $p2, $p3 , $p4, $p5 ) = get_action_params( 5 );
|
|
|
|
if ( defined $p1 ) {
|
|
if ( $p1 eq 'audit' ) {
|
|
set_action_param( 2, 'A_REJECT') unless supplied $p2;
|
|
set_action_param( 3, 'A_REJECT') unless supplied $p3;
|
|
set_action_param( 4, 'A_ACCEPT' ) unless supplied $p4;
|
|
set_action_param( 5, 'A_DROP' ) unless supplied $p5;
|
|
} else {
|
|
fatal_error "Invalid value ($p1) for first Reject parameter" if supplied $p1;
|
|
}
|
|
}
|
|
|
|
1;
|
|
|
|
END PERL;
|
|
|
|
DEFAULTS -,REJECT,REJECT,ACCEPT,DROP
|
|
|
|
#TARGET SOURCE DEST PROTO
|
|
#
|
|
# Count packets that come through here
|
|
#
|
|
COUNT
|
|
#
|
|
# Don't log 'auth' -- REJECT
|
|
#
|
|
Auth($2)
|
|
#
|
|
# Drop Broadcasts so they don't clutter up the log
|
|
# (broadcasts must *not* be rejected).
|
|
#
|
|
Broadcast(DROP,$1)
|
|
#
|
|
# ACCEPT critical ICMP types
|
|
#
|
|
AllowICMPs($4) - - icmp
|
|
#
|
|
# Drop packets that are in the INVALID state -- these are usually ICMP packets
|
|
# and just confuse people when they appear in the log (these ICMPs cannot be
|
|
# rejected).
|
|
#
|
|
Invalid(DROP,$1)
|
|
#
|
|
# Reject Microsoft noise so that it doesn't clutter up the log.
|
|
#
|
|
SMB($3)
|
|
DropUPnP($5)
|
|
#
|
|
# Drop 'newnotsyn' traffic so that it doesn't get logged.
|
|
#
|
|
NotSyn(DROP,$1) - - tcp
|
|
#
|
|
# Drop late-arriving DNS replies. These are just a nuisance and clutter up
|
|
# the log.
|
|
#
|
|
DropDNSrep($5)
|