]> git.donarmstrong.com Git - dsa-puppet.git/blobdiff - modules/ferm/files/ferm.conf
add log/drop rule
[dsa-puppet.git] / modules / ferm / files / ferm.conf
index 6cd911f986aa7f9e5b1b5ef377c4a67031146d91..e213a0474cfd4f3cc86496dd46054657af6fa1bb 100644 (file)
@@ -1,19 +1,35 @@
-# include some ferm definitions, useful for adding function to abstract stuff
-@include 'defs.conf';
+##
+## THIS FILE IS UNDER PUPPET CONTROL. DON'T EDIT IT HERE.
+## USE: git clone git+ssh://$USER@puppet.debian.org/srv/puppet.debian.org/git/dsa-puppet.git
+##
+
+# -*- shell-script -*-
+
+@include 'conf.d/';
 
-# a simple default and fairly secure policy
 domain (ip ip6) {
-       chain INPUT {
-               policy DROP;
-               mod state state (ESTABLISHED RELATED) ACCEPT;
-               interface lo ACCEPT;
-               proto tcp mod state state NEW !syn DROP;
-               proto icmp ACCEPT;
-       }
+       table filter {
+               chain log_and_reject {
+                       ULOG ulog-prefix "REJECT: ";
+                       proto tcp REJECT reject-with tcp-reset;
+                       REJECT;
+               }
+       
+               chain log_or_drop {
+                       mod hashlimit hashlimit-name ulogreject  hashlimit-mode srcip hashlimit-burst 30 hashlimit 15/second jump log_and_reject;
+                       mod hashlimit hashlimit-name uloglogdrop hashlimit-mode srcip hashlimit-burst 30 hashlimit 15/second ULOG ulog-prefix "DROP: ";
+                       DROP;
+               }
 }
 
-# per-host configuration
-@include 'conf.d/';
+domain (ip ip6) {
+       chain INPUT {
+               policy DROP;
+               mod state state (ESTABLISHED RELATED) ACCEPT;
+               interface lo ACCEPT;
+               proto icmp ACCEPT;
+               mod state state (INVALID) DROP;
+       }
+}
 
-# managed via puppet
 @include 'dsa.d/';