fail2ban的配置主要由基础配置(fail2ban.conf)和监禁配置(jail.conf)两部分组成。

fail2ban的配置采用标签块"[块名]"和键值"key=value"的形式描述配置。

在fail2ban配置中可以使用"#"来注释行,可以写入一行关于配置的描述信息。

配置块 - [INCLUDES]

在fail2ban的配置中,"[INCLUDES]"配置块是公共的,它主要用于在当前配置文件中关联其他配置文件,它主要由"after"和"before"两个配置选项组成,"after"表示在在加载当前文件中的配置项之后再加载指定的另一个文件中的配置内容,"before"表示在加载当前文件中的配置项之前加载指定的另一个文件中的配置内容。

基础配置(fail2ban.conf)

fail2ban.conf主要是"[Definition]"配置块下进行配置,配置Fail2ban服务端的常规配置项,这是特定的配置。

监禁配置(jail.conf)

jail.conf主要由默认的监禁配置"[DEFAULT]"和自定义的监禁配置"[自定义监禁名称]"两部分组成。

"[DEFAULT]"中定义的配置项将是在所有监禁(jail)中生效的全局配置项,如果"[自定义监禁名称]"的配置项覆盖了"[DEFAULT]"中定义的配置项则以"[自定义监禁名称]"中的配置有效,即局部优先于全局,如果全局配置中未定义则局部自动引用全局的配置。

在fail2ban的配置中每个配置项都是一个变量,可使用"%(变量)s"的方式在其他位置调用。

过滤器配置(filter)

filter主要由"[Definition]"定义过滤器和"[Init]"初始化过滤器两个配置块组成。

在"[Definition]"中"failregex"配置项用于使用正则表达式定义要从日志中匹配到要禁止主机的IP地址,在正则表达式中使用关键字""获取。"ignoreregex"配置项用于使用正则表达式定义要从日志中匹配无需禁止主机的IP地址,在使用关键字""获取。

"[Init]"配置块用于初始化过滤器,即定义关于过滤器的一些固定配置项,常见的有"maxlines"和"journalmatch","maxlines"定义过滤器每次从日志中读取的日志行最大数量;"journalmatch"定义当Fail2ban使用"backend=systemd"后端文件监视器时,从指定的系统服务的journal日志中匹配要禁止的主机IP。

动作配置(action)

action主要由"[Definition]"定义动作和"[Init]"初始化动作两个配置块组成。

在动作(action)配置项中可以使用"<关键字>"的方式定义要执行动作的参数。例如:"actionstart = -N f2b-",然后可以在监禁配置关联动作时传递参数,例如:"action = iptables[iptables="iptables", name="sshd"]"。

在动作中""关键字等于过滤器中的""关键字,即要监禁的IP地址。

Fail2ban 配置详解 配置说明的更多相关文章

  1. Fail2ban 配置详解 动作配置

    ### # 包含配置 ### [INCLUDES] before = iptables-common.conf ### # 定义动作 ### [Definition] actionstart = &l ...

  2. Fail2ban 配置详解 过滤器配置

    Fail2ban自带了很多相关服务日志的过滤器. ### # 包含配置 ### [INCLUDES] before = common.conf # 还包含其他文件中的配置,在加载本配置文件中配置之前先 ...

  3. Fail2ban 配置详解 监禁配置(jail.conf)

    ### # 包含配置 ### [INCLUDES] # after = # 在加载本配置文件之后再加载指定的独立配置文件. before = paths-debian.conf # 在加载本配置文件之 ...

  4. Fail2ban 配置详解 基础配置(fail2ban.conf)

    [Definition] loglevel = INFO # 设置日志级别:级别越低显示日志的信息更详细. # CRITICAL - 关键级别 # ERROR - 错误级别 # WARNING - 警 ...

  5. Fail2ban 配置详解 配置目录结构说明

    /etc/fail2ban/ ├── action.d │ ├── ... ├── fail2ban.conf ├── fail2ban.d ├── filter.d │ ├── ... ├── ja ...

  6. Eclipse IDE for C/C++ Developers安装配置详解

    Eclipse IDE for C/C++ Developers安装配置详解(转) 转自:http://hi.baidu.com/ltb6w/item/986532efd712460f570f1ddc ...

  7. Apache的配置详解 带图

    对Apache 的 Http.conf 各项配置详解 1.01 ServerRoot 配置 [ServerRoot "" 主要用于指定 Apache 的安装路径,此选项参数值在安装 ...

  8. Log4j配置详解之log4j.xml

    Log4j配置详解之log4j.xml Log4J的配置文件(Configuration File)就是用来设置记录器的级别.存放器和布局的,它可接key=value格式的设置或xml格式的设置信息. ...

  9. druid 参数配置详解

    druid 参数配置详解 */--> druid 参数配置详解 Table of Contents 1. 初始化连接 2. 参数配置及说明 3. 注意事项 3.1. 底层连接 3.2. 空闲检查 ...

随机推荐

  1. 用Python爬取斗鱼网站的一个小案例

    思路解析: 1.我们需要明确爬取数据的目的:为了按热度查看主播的在线观看人数 2.浏览网页源代码,查看我们需要的数据的定位标签 3.在代码中发送一个http请求,获取到网页返回的html(需要注意的是 ...

  2. Git本地上传口令

    $ cd /d/GitProject  (进入要上传的文件的文件夹) $ git pull                 (更新本地库) $ git add .                (添加 ...

  3. 微信jssdk分享(附代码)

    老规矩---demo图: (注释:微信分享只支持右上角三个点触发) ======> 老规矩上菜: 1. 这边我封装了  share.js function allSharefun(param) ...

  4. 微信小程序发送验证码功能,验证码倒计时

    data{ timer:'', countDownNum:'发送验证码', } // 点击验证码倒计时获取验证码 Gain:function(e){ let that = this let count ...

  5. 【Unity原神AR开发实战 2022】下载原神模型,PMX转FBX,导入到Unity,AR设置,测试应用程序,生成应用程序

    文章目录 一.前言 二.模型下载 1.官网下载 2.模之屋官方下载 3.第三方链接 三.pmx转fbx 1.Blender插件CATS的下载与安装 2.pmx模型的导入 四.Unity开发部分 1.V ...

  6. Servlet学习记录

    个人认为servlet属于一种控制程序,可以处理浏览器的请求并做出对应的回应.我们经常使用的是让一个类去继承HttpServlet,然后在doget或者dopost里面写东西. 目前我个人常在doge ...

  7. python---两个栈实现一个队列

    class Solution: """两个栈实现一个队列""" def __init__(self): # 接收栈 self.accept_ ...

  8. mycat实现主从读取中的问题

    schema.xml 中的配置如下:..... <dataHost name="aaa" maxCon="2000" minCon="100&q ...

  9. Hystrix熔断初体验

    <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring ...

  10. Java学习day18

    学习了三种简单的布局结构 做了一个简单的多按键窗口 Panel无法单独存在而显示出来,需要借助一个容器,例如Frame 明天学习输入框监听和画笔