CentOS 7 安装fail2ban hostdeny方式封禁ip —— 筑梦之路
centos 7 换源参考CentOS 7.9 停止维护(2024-6-30)后可用在线yum源 —— 筑梦之路_centos停止维护-CSDN博客
安装fail2ban
yum install fail2ban
新增配置文件
cat > /etc/fail2ban/action.d/hostsdeny.conf << EOF
[Definition]
actionstart =
actionstop =
actioncheck =
actionban = echo "ALL: <ip>" >> /etc/hosts.deny
actionunban = sed -i.bak "/\<ip\>/d" /etc/hosts.deny
EOF
cat > /etc/fail2ban/jail.local << EOF
#defalut这里是设定全局设置,如果下面的监控没有设置就以全局设置的值设置。
[DEFAULT]
# 用于指定哪些地址ip可以忽略 fail2ban 防御,以空格间隔。
ignoreip = 127.0.0.1/8
# 客户端主机被禁止的时长(默认单位为秒)
bantime = 86400
# 过滤的时长(秒)
findtime = 600
# 匹配到的阈值(次数)
maxretry = 5
[ssh-iptables]
# 是否开启
enabled = true
# 过滤规则
filter = sshd
port = 22
# 动作 发送邮件一定要加在action 后面,一定要注意位置
#action = hostsdeny
banaction = hostsdeny
banaction_allports = hostsdeny-allports
# 日志文件的路径
logpath = /var/log/secure
# 匹配到的阈值(次数)
maxretry = 5
EOF
启动服务
systemctl enable fail2ban --now
# 查看被封禁的ip
fail2ban-client status ssh-iptables