88 lines
2.7 KiB
Plaintext
88 lines
2.7 KiB
Plaintext
|
# Fail2Ban configuration file
|
||
|
#
|
||
|
# Author: Daniel Black
|
||
|
#
|
||
|
# This is for ipset protocol 6 (and hopefully later) (ipset v6.14).
|
||
|
# Use ipset -V to see the protocol and version. Version 4 should use
|
||
|
# iptables-ipset-proto4.conf.
|
||
|
#
|
||
|
# This requires the program ipset which is normally in package called ipset.
|
||
|
#
|
||
|
# IPset was a feature introduced in the linux kernel 2.6.39 and 3.0.0 kernels.
|
||
|
#
|
||
|
# If you are running on an older kernel you make need to patch in external
|
||
|
# modules which probably won't be protocol version 6.
|
||
|
#
|
||
|
# Modified: Alexander Koeppe <format_c@online.de>, Serg G. Brester <serg.brester@sebres.de>
|
||
|
# made config file IPv6 capable (see new section Init?family=inet6)
|
||
|
|
||
|
[INCLUDES]
|
||
|
|
||
|
before = iptables-common.conf
|
||
|
|
||
|
[Definition]
|
||
|
|
||
|
# Option: actionstart
|
||
|
# Notes.: command executed on demand at the first ban (or at the start of Fail2Ban if actionstart_on_demand is set to false).
|
||
|
# Values: CMD
|
||
|
#
|
||
|
actionstart = ipset create <ipmset> hash:ip timeout <default-ipsettime> <familyopt>
|
||
|
<iptables> -I <chain> -m set --match-set <ipmset> src -j <blocktype>
|
||
|
|
||
|
# Option: actionflush
|
||
|
# Notes.: command executed once to flush IPS, by shutdown (resp. by stop of the jail or this action)
|
||
|
# Values: CMD
|
||
|
#
|
||
|
actionflush = ipset flush <ipmset>
|
||
|
|
||
|
# Option: actionstop
|
||
|
# Notes.: command executed at the stop of jail (or at the end of Fail2Ban)
|
||
|
# Values: CMD
|
||
|
#
|
||
|
actionstop = <iptables> -D <chain> -m set --match-set <ipmset> src -j <blocktype>
|
||
|
<actionflush>
|
||
|
ipset destroy <ipmset>
|
||
|
|
||
|
# Option: actionban
|
||
|
# Notes.: command executed when banning an IP. Take care that the
|
||
|
# command is executed with Fail2Ban user rights.
|
||
|
# Tags: See jail.conf(5) man page
|
||
|
# Values: CMD
|
||
|
#
|
||
|
actionban = ipset add <ipmset> <ip> timeout <ipsettime> -exist
|
||
|
|
||
|
# actionprolong = %(actionban)s
|
||
|
|
||
|
# Option: actionunban
|
||
|
# Notes.: command executed when unbanning an IP. Take care that the
|
||
|
# command is executed with Fail2Ban user rights.
|
||
|
# Tags: See jail.conf(5) man page
|
||
|
# Values: CMD
|
||
|
#
|
||
|
actionunban = ipset del <ipmset> <ip> -exist
|
||
|
|
||
|
[Init]
|
||
|
|
||
|
# Option: default-ipsettime
|
||
|
# Notes: specifies default timeout in seconds (handled default ipset timeout only)
|
||
|
# Values: [ NUM ] Default: 0 (no timeout, managed by fail2ban by unban)
|
||
|
default-ipsettime = 0
|
||
|
|
||
|
# Option: ipsettime
|
||
|
# Notes: specifies ticket timeout (handled ipset timeout only)
|
||
|
# Values: [ NUM ] Default: 0 (managed by fail2ban by unban)
|
||
|
ipsettime = 0
|
||
|
|
||
|
# expresion to caclulate timeout from bantime, example:
|
||
|
# banaction = %(known/banaction)s[ipsettime='<timeout-bantime>']
|
||
|
timeout-bantime = $([ "<bantime>" -le 2147483 ] && echo "<bantime>" || echo 0)
|
||
|
|
||
|
ipmset = f2b-<name>
|
||
|
familyopt =
|
||
|
|
||
|
|
||
|
[Init?family=inet6]
|
||
|
|
||
|
ipmset = f2b-<name>6
|
||
|
familyopt = family inet6
|