X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Ffail2ban%2Fmanifests%2Finit.pp;h=f4f7b9fd08d2f7c9bb64a8645e3d53c0eee961ba;hb=b6bfdeb507a772497a46fe533f43b372e686c63b;hp=3051b9975980263192169e7eabfca8313913edc3;hpb=b3d9dd83da3f8ac34ccbdf912e1113f1ef49a64c;p=mirror%2Fdsa-puppet.git diff --git a/modules/fail2ban/manifests/init.pp b/modules/fail2ban/manifests/init.pp index 3051b9975..f4f7b9fd0 100644 --- a/modules/fail2ban/manifests/init.pp +++ b/modules/fail2ban/manifests/init.pp @@ -7,11 +7,40 @@ class fail2ban { ensure => running, } - @ferm::conf { 'f2b': + file { '/etc/fail2ban/jail.d/dsa-00-default.conf': + source => 'puppet:///modules/fail2ban/jail/dsa-00-default.conf', + notify => Service['fail2ban'], + } + + ferm::conf { 'f2b': content => @(EOF), @hook post "type fail2ban-client > /dev/null && (fail2ban-client ping > /dev/null && fail2ban-client reload > /dev/null ) || true"; @hook flush "type fail2ban-client > /dev/null && (fail2ban-client ping > /dev/null && fail2ban-client reload > /dev/null ) || true"; | EOF } + ferm::rule { 'dsa-f2b-setup1': + prio => '005', + description => 'f2b master rule', + chain => 'dsa-f2b', + domain => '(ip ip6)', + rule => '', + notarule => true, + } + ferm::rule { 'dsa-f2b-setup2': + prio => '005', + description => 'f2b master rule', + chain => 'INPUT', + domain => '(ip ip6)', + rule => 'jump dsa-f2b', + } + + # XXX Maybe this will be automatically done in buster, it is certainly needed in stretch. So maybe: versioncmp($::lsbmajdistrelease, '9') <= 0 + concat::fragment { 'puppet-crontab--fail2ban-cleanup': + target => '/etc/cron.d/puppet-crontab', + content => @(EOF) + 17 * * * * root chronic python3 -c "import sys, logging; logging.basicConfig(stream=sys.stdout, level=logging.INFO); from fail2ban.server.database import Fail2BanDb; db = Fail2BanDb('/var/lib/fail2ban/fail2ban.sqlite3'); db.purge(); db._db.cursor().execute('VACUUM')" + | EOF + } + }