diff --git a/Shorewall-init/install.sh b/Shorewall-init/install.sh index b4d3bb498..263783c73 100755 --- a/Shorewall-init/install.sh +++ b/Shorewall-init/install.sh @@ -23,7 +23,7 @@ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. # -VERSION=4.4.20-Beta2 +VERSION=4.4.20-Beta3 usage() # $1 = exit status { diff --git a/Shorewall-init/shorewall-init.spec b/Shorewall-init/shorewall-init.spec index 680a2a827..00589fa18 100644 --- a/Shorewall-init/shorewall-init.spec +++ b/Shorewall-init/shorewall-init.spec @@ -1,6 +1,6 @@ %define name shorewall-init %define version 4.4.20 -%define release 0Beta2 +%define release 0Beta3 Summary: Shorewall-init adds functionality to Shoreline Firewall (Shorewall). Name: %{name} @@ -120,6 +120,8 @@ fi %changelog * Wed May 18 2011 Tom Eastep tom@shorewall.net +- Updated to 4.4.20-0Beta3 +* Wed May 18 2011 Tom Eastep tom@shorewall.net - Updated to 4.4.20-0Beta2 * Sat Apr 16 2011 Tom Eastep tom@shorewall.net - Updated to 4.4.19-1 diff --git a/Shorewall-init/uninstall.sh b/Shorewall-init/uninstall.sh index 70ebafd26..39373e60e 100755 --- a/Shorewall-init/uninstall.sh +++ b/Shorewall-init/uninstall.sh @@ -26,7 +26,7 @@ # You may only use this script to uninstall the version # shown below. Simply run this script to remove Shorewall Firewall -VERSION=4.4.20-Beta2 +VERSION=4.4.20-Beta3 usage() # $1 = exit status { diff --git a/Shorewall-lite/install.sh b/Shorewall-lite/install.sh index b25b76f27..0921b2d66 100755 --- a/Shorewall-lite/install.sh +++ b/Shorewall-lite/install.sh @@ -22,7 +22,7 @@ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. # -VERSION=4.4.20-Beta2 +VERSION=4.4.20-Beta3 usage() # $1 = exit status { diff --git a/Shorewall-lite/shorewall-lite.spec b/Shorewall-lite/shorewall-lite.spec index 92818a626..7f21b83c8 100644 --- a/Shorewall-lite/shorewall-lite.spec +++ b/Shorewall-lite/shorewall-lite.spec @@ -1,6 +1,6 @@ %define name shorewall-lite %define version 4.4.20 -%define release 0Beta2 +%define release 0Beta3 Summary: Shoreline Firewall Lite is an iptables-based firewall for Linux systems. Name: %{name} @@ -104,6 +104,8 @@ fi %changelog * Wed May 18 2011 Tom Eastep tom@shorewall.net +- Updated to 4.4.20-0Beta3 +* Wed May 18 2011 Tom Eastep tom@shorewall.net - Updated to 4.4.20-0Beta2 * Sat Apr 16 2011 Tom Eastep tom@shorewall.net - Updated to 4.4.20-0Beta1 diff --git a/Shorewall-lite/uninstall.sh b/Shorewall-lite/uninstall.sh index a4ac7f298..e7c53190d 100755 --- a/Shorewall-lite/uninstall.sh +++ b/Shorewall-lite/uninstall.sh @@ -26,7 +26,7 @@ # You may only use this script to uninstall the version # shown below. Simply run this script to remove Shorewall Firewall -VERSION=4.4.20-Beta2 +VERSION=4.4.20-Beta3 usage() # $1 = exit status { diff --git a/Shorewall/Perl/Shorewall/Config.pm b/Shorewall/Perl/Shorewall/Config.pm index d4e1fc36a..5911ebb01 100644 --- a/Shorewall/Perl/Shorewall/Config.pm +++ b/Shorewall/Perl/Shorewall/Config.pm @@ -262,6 +262,7 @@ my %capdesc = ( NAT_ENABLED => 'NAT', MARK_ANYWHERE => 'Mark in any table', HEADER_MATCH => 'Header Match', ACCOUNT_TARGET => 'ACCOUNT Target', + AUDIT_TARGET => 'AUDIT Target', CAPVERSION => 'Capability Version', KERNELVERSION => 'Kernel Version', ); @@ -412,8 +413,8 @@ sub initialize( $ ) { EXPORT => 0, STATEMATCH => '-m state --state', UNTRACKED => 0, - VERSION => "4.4.20-Beta2", - CAPVERSION => 40417 , + VERSION => "4.4.20-Beta3", + CAPVERSION => 40420, ); # # From shorewall.conf file @@ -561,7 +562,8 @@ sub initialize( $ ) { PANIC => 0, NONE => '', NFLOG => 'NFLOG', - LOGMARK => 'LOGMARK' ); + LOGMARK => 'LOGMARK', + AUDIT => 'AUDIT' ); # # From parsing the capabilities file or capabilities detection @@ -619,6 +621,7 @@ sub initialize( $ ) { MARK_ANYWHERE => undef, HEADER_MATCH => undef, ACCOUNT_TARGET => undef, + AUDIT_TARGET => undef, CAPVERSION => undef, KERNELVERSION => undef, ); @@ -2053,6 +2056,12 @@ sub validate_level( $ ) { return 'LOGMARK'; } + if ( $level =~ /^AUDIT\(.+\)$/ ) { + require_capability( 'AUDIT_TARGET', 'AUDIT', 's' ); + fatal_error "Invalid AUDIT type ($2)" unless $2 =~ /^(?:DROP|REJECT|ACCEPT)$/; + return "AUDIT --type $2"; + } + level_error( $rawlevel ); } @@ -2525,9 +2534,14 @@ sub Account_Target() { } } +sub Audit_Target() { + qt1( "$iptables -A $sillyname -j AUDIT --type DROP" ); +} + our %detect_capability = ( ACCOUNT_TARGET =>\&Account_Target, ADDRTYPE => \&Addrtype, + AUDIT_TARGET => \&Audit_Target, CLASSIFY_TARGET => \&Classify_Target, COMMENTS => \&Comments, CONNLIMIT_MATCH => \&Connlimit_Match, diff --git a/Shorewall/install.sh b/Shorewall/install.sh index 2b046d6cd..8e55e085d 100755 --- a/Shorewall/install.sh +++ b/Shorewall/install.sh @@ -22,7 +22,7 @@ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. # -VERSION=4.4.20-Beta2 +VERSION=4.4.20-Beta3 usage() # $1 = exit status { diff --git a/Shorewall/lib.base b/Shorewall/lib.base index 5adad0e93..098e9911d 100644 --- a/Shorewall/lib.base +++ b/Shorewall/lib.base @@ -29,7 +29,7 @@ # SHOREWALL_LIBVERSION=40407 -SHOREWALL_CAPVERSION=40417 +SHOREWALL_CAPVERSION=40420 [ -n "${VARDIR:=/var/lib/shorewall}" ] [ -n "${SHAREDIR:=/usr/share/shorewall}" ] diff --git a/Shorewall/lib.cli b/Shorewall/lib.cli index 716f9d9d4..0ceef14ce 100644 --- a/Shorewall/lib.cli +++ b/Shorewall/lib.cli @@ -1707,6 +1707,7 @@ determine_capabilities() { MARK_ANYWHERE= HEADER_MATCH= ACCOUNT_TARGET= + AUDIT_TARGET= chain=fooX$$ @@ -1846,6 +1847,7 @@ determine_capabilities() { qt $IPTABLES -A $chain -j LOG || LOG_TARGET= qt $IPTABLES -A $chain -j MARK --set-mark 5 && MARK_ANYWHERE=Yes qt $IPTABLES -A $chain -j ACCOUNT --addr 192.168.1.0/29 --tname $chain && ACCOUNT_TARGET=Yes + qt $IPTABLES -A $chain -j AUDIT --type DROP && ACCOUNT_TARGET=Yes qt $IPTABLES -F $chain qt $IPTABLES -X $chain @@ -1928,6 +1930,7 @@ report_capabilities() { report_capability "Mark in any table" $MARK_ANYWHERE report_capability "Header Match" $HEADER_MATCH report_capability "ACCOUNT Target" $ACCOUNT_TARGET + report_capability "AUDIT Target" $AUDIT_TARGET fi [ -n "$PKTTYPE" ] || USEPKTTYPE= @@ -1995,6 +1998,7 @@ report_capabilities1() { report_capability1 MARK_ANYWHERE report_capability1 HEADER_MATCH report_capability1 ACCOUNT_TARGET + report_capability1 AUDIT_TARGET echo CAPVERSION=$SHOREWALL_CAPVERSION echo KERNELVERSION=$KERNELVERSION diff --git a/Shorewall/shorewall.spec b/Shorewall/shorewall.spec index 995ef60b6..2d8142f8b 100644 --- a/Shorewall/shorewall.spec +++ b/Shorewall/shorewall.spec @@ -1,6 +1,6 @@ %define name shorewall %define version 4.4.20 -%define release 0Beta2 +%define release 0Beta3 Summary: Shoreline Firewall is an iptables-based firewall for Linux systems. Name: %{name} @@ -110,6 +110,8 @@ fi %changelog * Wed May 18 2011 Tom Eastep tom@shorewall.net +- Updated to 4.4.20-0Beta3 +* Wed May 18 2011 Tom Eastep tom@shorewall.net - Updated to 4.4.20-0Beta2 * Fri Apr 15 2011 Tom Eastep tom@shorewall.net - Updated to 4.4.20-0Beta1 diff --git a/Shorewall/uninstall.sh b/Shorewall/uninstall.sh index 6ff39e240..ce62594a5 100755 --- a/Shorewall/uninstall.sh +++ b/Shorewall/uninstall.sh @@ -26,7 +26,7 @@ # You may only use this script to uninstall the version # shown below. Simply run this script to remove Shorewall Firewall -VERSION=4.4.20-Beta2 +VERSION=4.4.20-Beta3 usage() # $1 = exit status { diff --git a/Shorewall6-lite/install.sh b/Shorewall6-lite/install.sh index aff5e58b8..c3a7ba81b 100755 --- a/Shorewall6-lite/install.sh +++ b/Shorewall6-lite/install.sh @@ -22,7 +22,7 @@ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. # -VERSION=4.4.20-Beta2 +VERSION=4.4.20-Beta3 usage() # $1 = exit status { diff --git a/Shorewall6-lite/shorewall6-lite.spec b/Shorewall6-lite/shorewall6-lite.spec index 0e9206ff4..806bcf06e 100644 --- a/Shorewall6-lite/shorewall6-lite.spec +++ b/Shorewall6-lite/shorewall6-lite.spec @@ -1,6 +1,6 @@ %define name shorewall6-lite %define version 4.4.20 -%define release 0Beta2 +%define release 0Beta3 Summary: Shoreline Firewall 6 Lite is an ip6tables-based firewall for Linux systems. Name: %{name} @@ -95,6 +95,8 @@ fi %changelog * Wed May 18 2011 Tom Eastep tom@shorewall.net +- Updated to 4.4.20-0Beta3 +* Wed May 18 2011 Tom Eastep tom@shorewall.net - Updated to 4.4.20-0Beta2 * Sat Apr 16 2011 Tom Eastep tom@shorewall.net - Updated to 4.4.20-0Beta1 diff --git a/Shorewall6-lite/uninstall.sh b/Shorewall6-lite/uninstall.sh index 93ea184a3..29a380ae1 100755 --- a/Shorewall6-lite/uninstall.sh +++ b/Shorewall6-lite/uninstall.sh @@ -26,7 +26,7 @@ # You may only use this script to uninstall the version # shown below. Simply run this script to remove Shorewall Firewall -VERSION=4.4.20-Beta2 +VERSION=4.4.20-Beta3 usage() # $1 = exit status { diff --git a/Shorewall6/install.sh b/Shorewall6/install.sh index 76155ba03..f00c1c609 100755 --- a/Shorewall6/install.sh +++ b/Shorewall6/install.sh @@ -22,7 +22,7 @@ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. # -VERSION=4.4.20-Beta2 +VERSION=4.4.20-Beta3 usage() # $1 = exit status { diff --git a/Shorewall6/lib.base b/Shorewall6/lib.base index d94cd828c..b61005f6a 100644 --- a/Shorewall6/lib.base +++ b/Shorewall6/lib.base @@ -33,7 +33,7 @@ # SHOREWALL_LIBVERSION=40407 -SHOREWALL_CAPVERSION=40417 +SHOREWALL_CAPVERSION=40420 [ -n "${VARDIR:=/var/lib/shorewall6}" ] [ -n "${SHAREDIR:=/usr/share/shorewall6}" ] diff --git a/Shorewall6/lib.cli b/Shorewall6/lib.cli index 76e6bf542..cc607dbe8 100644 --- a/Shorewall6/lib.cli +++ b/Shorewall6/lib.cli @@ -1568,6 +1568,7 @@ report_capabilities() { report_capability "Mark in any table" $MARK_ANYWHERE report_capability "Header Match" $HEADER_MATCH report_capability "ACCOUNT Match" $ACCOUNT_TARGET + report_capability "AUDIT Match" $AUDIT_TARGET fi [ -n "$PKTTYPE" ] || USEPKTTYPE= @@ -1632,6 +1633,7 @@ report_capabilities1() { report_capability1 MARK_ANYWHERE report_capability1 HEADER_MATCH report_capability1 ACCOUNT_TARGET + report_capability1 AUDIT_TARGET echo CAPVERSION=$SHOREWALL_CAPVERSION echo KERNELVERSION=$KERNELVERSION diff --git a/Shorewall6/shorewall6.spec b/Shorewall6/shorewall6.spec index 2c017ffaa..4b61817bc 100644 --- a/Shorewall6/shorewall6.spec +++ b/Shorewall6/shorewall6.spec @@ -1,6 +1,6 @@ %define name shorewall6 %define version 4.4.20 -%define release 0Beta2 +%define release 0Beta3 Summary: Shoreline Firewall 6 is an ip6tables-based firewall for Linux systems. Name: %{name} @@ -99,6 +99,8 @@ fi %changelog * Wed May 18 2011 Tom Eastep tom@shorewall.net +- Updated to 4.4.20-0Beta3 +* Wed May 18 2011 Tom Eastep tom@shorewall.net - Updated to 4.4.20-0Beta2 * Sat Apr 16 2011 Tom Eastep tom@shorewall.net - Updated to 4.4.20-0Beta1 diff --git a/Shorewall6/uninstall.sh b/Shorewall6/uninstall.sh index 8113d4507..99eacb4d4 100755 --- a/Shorewall6/uninstall.sh +++ b/Shorewall6/uninstall.sh @@ -26,7 +26,7 @@ # You may only use this script to uninstall the version # shown below. Simply run this script to remove Shorewall Firewall -VERSION=4.4.20-Beta2 +VERSION=4.4.20-Beta3 usage() # $1 = exit status {