-# 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/';