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. canvas动画—圆形扩散、运动轨迹

    介绍 在ECharts中看到过这种圆形扩散效果,类似css3,刚好项目中想把它用上,but我又不想引入整个echart.js文件,更重要的是想弄明白它的原理,所以自己动手.在这篇文章中我们就来分析实现 ...

  2. javascript,如何实现数据绑定

    在三大框架 抢占前端开发技术领域的时代,基本每个框架都是实现了数据绑定, 今天我们来解密一下数据绑定的原理, 原理关乎一个很关键的东西,Object.prototype.__defineSetter和 ...

  3. Python入门-面向对象-装饰器

    1.变量作用域 全局变量和局部变量 #变量是有作用域的,分为全局变量和局部变量 num = 100 #这是全局变量 def change(): """ 查看变量作用域 & ...

  4. 整合SSM框架环境搭建

    知识要求 MySQL相关操作 Maven操作 Mybatis.Spring.SpringMVC三个框架基本操作 JavaWeb等知识 搭建环境 MySQL 8.0 Mybatis 3.5.2 使用c3 ...

  5. 帝国CMS灵动标签调用相关文章

    标题包含关键字①.比较粗糙的匹配,可能不太精确:title like '%$navinfor[keyboard]%' ②.精确的匹配,比较消耗资源:title regexp '(^|,)$navinf ...

  6. 使用Visual Studio 2019开发Qt程序

    安装Qt 如标题,你首先需要到 http://download.qt.io/ 去下载并安装Qt,并在引导下安装MSVC组件(这里不做过多解释) Visual Studio 2019 配置 打开VS20 ...

  7. Ant Design Pro V5 与 IdentityServer 实现 Password 模式的登录

    最近处于休息状态,想趁着休息时间,为自己做一个后台. 后端框架选用了 Abp.之前公司使用了一些自研的框架,但由于人力资源有限,后期框架的升级及维护都是比较耗时,这次干脆直接使用Abp,即省心又能快速 ...

  8. Java学习day29

    线程礼让(yield):礼让线程,让当前正在执行的线程暂停,但是不阻塞:让线程从运行状态转为就绪状态:让CPU重新调度,礼让不一定成功 合并线程(join):待此线程执行完毕后,再执行其他线程,其他线 ...

  9. JavaScript学习总结7-BOM

    今天学习了BOM模型,可以利用其来获得屏幕数据,网页历史,以及网页location等数据

  10. Codeforces Round #741 (Div. 2), problem: (D1) Two Hundred Twenty One (easy version), 1700

    Problem - D1 - Codeforces 题意: 给n个符号(+或-), +代表+1, -代表-1, 求最少删去几个点, 使得     题解(仅此个人理解): 1. 这题打眼一看, 肯定和奇 ...