Oefenweb.fail2ban
fail2ban
在类似Debian的系统中设置fail2ban。
要求
无
变量
fail2ban_loglevel:[默认:3,在较新版本中为INFO]:设置日志级别输出(例如,1 = 错误,2 = 警告,3 = 信息,4 = 调试)fail2ban_logtarget:[默认:/var/log/fail2ban.log]:设置日志目标。可以是文件、SYSLOG、STDERR或STDOUTfail2ban_syslog_target:[默认:/var/log/fail2ban.log]:fail2ban_syslog_facility:[默认:1]:fail2ban_socket:[默认:/var/run/fail2ban/fail2ban.sock]:设置用于与守护进程通信的套接字文件fail2ban_pidfile:[默认:/var/run/fail2ban/fail2ban.pid]:设置pid文件,用于存储守护进程的进程ID(仅适用于fail2ban >= 0.8.9)fail2ban_dbpurgeage:[默认:86400]:设置应从数据库中清除的禁用时间fail2ban_ignoreips:[默认:[127.0.0.1/8]]:应被fail2ban忽略的IP地址/CIDR掩码/DNS主机fail2ban_bantime:[默认:600]:设置禁用时间fail2ban_maxretry:[默认:3]:主机被禁用之前的最大重试次数fail2ban_findtime:[默认:600]:如果主机在过去的fail2ban_findtime内产生了fail2ban_maxretry,则会被禁用fail2ban_backend:[默认:auto]:指定用于获取文件修改的后端。对于Debian 12,要求使用systemdfail2ban_banaction:[默认:iptables-multiport]:设置全局/默认的禁用操作fail2ban_banaction_allports:[默认:iptables-allports]:为所有端口设置全局/默认的禁用操作fail2ban_mta:[默认:sendmail]:电子邮件操作fail2ban_protocol:[默认:tcp]:设置默认协议fail2ban_chain:[默认:INPUT]:指定在iptables-*操作中需要添加跳转的链fail2ban_action:[默认:%(action_)s]:默认操作。注意,变量(包括在配置文件其他地方定义的操作)必须用python样式的%(和)s包裹,以便展开fail2ban_sendername:[默认:Fail2ban]:通过mta操作发送电子邮件时的发件人名称。注意:使用fail2ban_sender设置发件人电子邮件地址。fail2ban_sender:[可选]:通过mta操作发送电子邮件时的发件人地址。fail2ban_filterd_path:[可选]:包含过滤器的目录路径(注意末尾的斜杠)fail2ban_actiond_path:[可选]:包含操作的目录路径(注意末尾的斜杠)fail2ban_jaild_path:[可选]:包含监狱的目录路径(注意末尾的斜杠)fail2ban_services[默认见defaults/main.yml]:服务定义fail2ban_services.{n}.name[必需]:服务名称(例如ssh)fail2ban_services.{n}.enabled[默认:true]:是否启用fail2ban_services.{n}.*[可选]:选项名称fail2ban_services.{n}.*.*[可选]:选项的值
对于版本 >= 0.11.1
fail2ban_bantime_increment:[默认:true]:在之前被禁用后增加禁用时间fail2ban_bantime_factor:[默认:1]:用于bantime_formula或bantime_multipliers的禁用时间增加因子fail2ban_bantime_formula:[默认:'ban.Time * (1<<(ban.Count if ban.Count<20 else 20)) * banFactor']:用于计算增加的禁用时间的公式。注意,您可以使用bantime_formula或bantime_multipliers,但bantime_multipliers优先。fail2ban_bantime_overalljails:[默认:false]:如果定义了多个监狱,则对所有监狱禁用IPfail2ban_bantime_rndtime:[可选]:针对在禁用时间后立即尝试访问的智能机器人选项fail2ban_bantime_multipliers:[可选]:替代bantime_formula使用的乘数。例如1 2 4 8 16 32 64。注意,对于bantime = 600和bantime_factor = 1,这将是600*1*1, 600*1*2...
依赖关系
无
示例
简单示例
---
- hosts: all
roles:
- oefenweb.fail2ban
启用sshd过滤器(带非默认设置)
---
- hosts: all
roles:
- oefenweb.fail2ban
vars:
fail2ban_services:
# 在较旧版本中,Fail2Ban称为ssh
- name: sshd
port: 2222
maxretry: 5
bantime: -1
添加自定义过滤器(来自角色外部)
---
- hosts: all
roles:
- oefenweb.fail2ban
vars:
fail2ban_filterd_path: ../../../files/fail2ban/etc/fail2ban/filter.d/
fail2ban_services:
- name: apache-wordpress-logins
port: http,https
filter: apache-wordpress-logins
logpath: /var/log/apache2/access.log
maxretry: 5
findtime: 120
许可证
MIT
作者信息
Mischa ter Smitten(基于ANXS的工作)
反馈、错误报告、请求等...
欢迎!
ansible-galaxy install Oefenweb.fail2ban