From c98547df62850f9904166456b08d3a8992235596 Mon Sep 17 00:00:00 2001 From: Nicolas KAROLAK <nicolas@karolak.fr> Date: Tue, 11 Sep 2018 17:53:28 +0200 Subject: [PATCH] fix(fail2ban): separate jails --- 2.Common_services/8.Fail2ban/0_setup.py | 35 ++++++++++++++++--- .../8.Fail2ban/jail.d/mediaserver.conf | 20 ----------- .../8.Fail2ban/jail.d/monitor.conf | 9 +++++ .../8.Fail2ban/jail.d/skyreach.conf | 9 +++++ 4 files changed, 49 insertions(+), 24 deletions(-) create mode 100644 2.Common_services/8.Fail2ban/jail.d/monitor.conf create mode 100644 2.Common_services/8.Fail2ban/jail.d/skyreach.conf diff --git a/2.Common_services/8.Fail2ban/0_setup.py b/2.Common_services/8.Fail2ban/0_setup.py index 8090ed1a..d2fb1635 100644 --- a/2.Common_services/8.Fail2ban/0_setup.py +++ b/2.Common_services/8.Fail2ban/0_setup.py @@ -1,5 +1,5 @@ #!/usr/bin/env python3 -# -*- coding: utf-8 -*- + import os import utils @@ -30,7 +30,9 @@ def setup(interactive=True): template='%s/filter.d/mediaserver.conf' % dir_path, target='/etc/fail2ban/filter.d/mediaserver.conf' ), - dict( + ] + if os.path.exists("/home/msuser/mstmp/mediaserver.log"): + cmds.append(dict( line='write', template='%s/jail.d/mediaserver.conf' % dir_path, target='/etc/fail2ban/jail.d/mediaserver.conf', @@ -41,8 +43,33 @@ def setup(interactive=True): ('{{ maxretry }}', maxretry), ('{{ bantime }}', bantime), ) - ), - ] + )) + if os.path.exists("/home/skyreach/.skyreach/logs/skyreach.log"): + cmds.append(dict( + line='write', + template='%s/jail.d/skyreach.conf' % dir_path, + target='/etc/fail2ban/jail.d/skyreach.conf', + params=( + ('{{ action }}', action), + ('{{ sender }}', sender), + ('{{ destemail }}', destemail), + ('{{ maxretry }}', maxretry), + ('{{ bantime }}', bantime), + ) + )) + if os.path.exists("/home/msmonitor/msmonitor/logs/site.log"): + cmds.append(dict( + line='write', + template='%s/jail.d/monitor.conf' % dir_path, + target='/etc/fail2ban/jail.d/monitor.conf', + params=( + ('{{ action }}', action), + ('{{ sender }}', sender), + ('{{ destemail }}', destemail), + ('{{ maxretry }}', maxretry), + ('{{ bantime }}', bantime), + ) + )) utils.run_commands(cmds) # restart fail2ban utils.log('Enable and restart fail2ban') diff --git a/2.Common_services/8.Fail2ban/jail.d/mediaserver.conf b/2.Common_services/8.Fail2ban/jail.d/mediaserver.conf index edc63e2b..1e21cb94 100644 --- a/2.Common_services/8.Fail2ban/jail.d/mediaserver.conf +++ b/2.Common_services/8.Fail2ban/jail.d/mediaserver.conf @@ -7,23 +7,3 @@ logpath = /home/*/mstmp/mediaserver.log action = %({{ action }})s sender = {{ sender }} destemail = {{ destemail }} - -[skyreach] -enabled = true -filter = mediaserver -maxretry = {{ maxretry }} -bantime = {{ bantime }} -logpath = /home/skyreach/.skyreach/logs/skyreach.log -action = %({{ action }})s -sender = {{ sender }} -destemail = {{ destemail }} - -[monitor] -enabled = true -filter = mediaserver -maxretry = {{ maxretry }} -bantime = {{ bantime }} -logpath = /home/msmonitor/msmonitor/logs/site.log -action = %({{ action }})s -sender = {{ sender }} -destemail = {{ destemail }} diff --git a/2.Common_services/8.Fail2ban/jail.d/monitor.conf b/2.Common_services/8.Fail2ban/jail.d/monitor.conf new file mode 100644 index 00000000..3e2b8ca6 --- /dev/null +++ b/2.Common_services/8.Fail2ban/jail.d/monitor.conf @@ -0,0 +1,9 @@ +[monitor] +enabled = true +filter = mediaserver +maxretry = {{ maxretry }} +bantime = {{ bantime }} +logpath = /home/msmonitor/msmonitor/logs/site.log +action = %({{ action }})s +sender = {{ sender }} +destemail = {{ destemail }} diff --git a/2.Common_services/8.Fail2ban/jail.d/skyreach.conf b/2.Common_services/8.Fail2ban/jail.d/skyreach.conf new file mode 100644 index 00000000..436a4872 --- /dev/null +++ b/2.Common_services/8.Fail2ban/jail.d/skyreach.conf @@ -0,0 +1,9 @@ +[skyreach] +enabled = true +filter = mediaserver +maxretry = {{ maxretry }} +bantime = {{ bantime }} +logpath = /home/skyreach/.skyreach/logs/skyreach.log +action = %({{ action }})s +sender = {{ sender }} +destemail = {{ destemail }} -- GitLab