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. VueJs单页应用实现微信网页授权及微信分享功能

    在实际开发中,无论是做PC端.WebApp端还是微信公众号等类型的项目的时候,或多或少都会涉及到微信相关的开发,最近公司项目要求实现微信网页授权,并获取微信用户基本信息的功能及微信分享的功能,现在总算 ...

  2. 小程序的初次遇见,使用mpvue搭建模板

    由于公司业务需求的需要,在这一周需要开发小程序,加急看了下小程序的文档,发现用其原生来编写程序不是很顺手,公司前端用的技术栈是vue, 询问了谷哥和度娘发现大部分推荐了 wepy和 mpvue,对比了 ...

  3. 认识 Function.prototype.bind()

    欢迎前端爱好者加入QQ群:112916679 答疑解惑,且可获取更多前端资料! bind()方法创建一个新的函数, 当被调用时,将其this关键字设置为提供的值,在调用新函数时,在任何提供之前提供一个 ...

  4. java中hashCode和equals什么关系,hashCode到底怎么用的

    Object类的hashCode的用法:(新手一定要忽略本节,否则会很惨) 马 克-to-win:hashCode方法主要是Sun编写的一些数据结构比如Hashtable的hash算法中用到.因为ha ...

  5. tomcat 安装配置及问题解决

    最近没写程序 刚想运行一个jsp程序发现tomcat出现一些问题,然后就重新装了程序,重新配置 总结经验就是不要怕报错,把错误复制下来,百度里面都有解决办法 要安装与自己jdk版本相匹配的tomcat ...

  6. nodejs制作爬虫程序

    在nodejs中,可以通过不断对服务器进行请求,以及本身的fs  =>filesystem 模块和clientRequest模块对网站的资源进行怕取,目前只做到了对图片的趴取!视频文件格式各异, ...

  7. 【版本2020.03】使用idea导入maven项目

    心得1:不同版本的idea,一些选项的名称稍微有点不同,比如以前导入项目的选项名称都是import Project,但是我使用的版本是2020.03 导入项目的名称是 import Settings ...

  8. linux设备管理之主设备号与次设备号

    主设备号和次设备号 一个字符设备或者块设备都有一个主设备号和次设备号.主设备号和次设备号统称为设备号.主设备号用来表示一个特定的驱动程序.次设备号用来表示使用该驱动程序的其他设备.(主设备号和控制这类 ...

  9. 如何基于 ZEGO SDK 实现 Windows 一对一音视频聊天应用

    互联网发展至今,实时视频和语音通话越来越被大众所依赖. 今天,我们将会继续介绍如何基于ZEGO SDK实现音视频通话功能,前两篇文章分别介绍了Android,Flutter平台的实现方式,感兴趣的小伙 ...

  10. 解决hexo报错spwan failed

    报错1 FATAL { err: Error: Spawn failed at ChildProcess.<anonymous> (/usr/local/src/hexo/cairbin/ ...