Centos7.9自动封禁IP

原创作者:运维工程师 谢晋

Centos7.9自动封禁IP

Centos7.9自动封禁IP

  1. 运维时,经常有业务系统会被攻击,重复的在尝试登陆系统账号密码;为了系统安全添加了个脚本来禁用5次密码错误的IP,脚本如下:

    vi failed_ips.sh

    #!/bin/bash

    创建一个临时文件来存储IP地址和它们的失败登录次数

    TEMPFILE=$(mktemp)

    使用awk处理/var/log/secure,提取IP地址并计数失败的登录尝试

    awk '/Failed/ {print 11}' /var/log/secure | sort | uniq -c | awk '1 > 2 {print 2"="1}' > "$TEMPFILE"

    读取临时文件,并将IP地址添加到/etc/hosts.deny中(如果它们尚未被添加)

    while IFS== read -r IP NUM; do
    if ! grep -q "^sshd:IP:deny" /etc/hosts.deny; then echo "sshd:IP:deny" >> /etc/hosts.deny
    fi
    done < "$TEMPFILE"

    删除临时文件

    rm "$TEMPFILE"

  2. 给脚本赋权

    chmod +x failed_ips.sh

  3. 创建计划任务

    crontab -e

    */10 * * * * /failed_ips.sh

确保/failed_ips.sh 是脚本的完整路径。

相关推荐
weixin_4491736520 分钟前
Linux -- 项目中查找日志的常用Linux命令
linux·运维·服务器
深念Y1 小时前
赛米尼M02/海纳斯HiNAS系统-WiFi驱动安装教程
运维·服务器·网络·docker·nas·机顶盒·hinas
想唱rap1 小时前
C++智能指针
linux·jvm·数据结构·c++·mysql·ubuntu·bash
会飞的土拨鼠呀1 小时前
Ubuntu24.04安装open-vm-tools
运维·服务器
Strugglingler2 小时前
基于whiptail开发shell导航工具
linux·shell·ui设计·whiptail
艾醒(AiXing-w)2 小时前
Linux系统管理(二十)——Linux root磁盘不足?一站式应急清理方案(亲测可用)
linux·运维·服务器
小义_3 小时前
【Kubernetes】(五) pod2
linux·云原生·容器·kubernetes
Azure DevOps3 小时前
Azure DevOps Server:2026年4月份补丁(安装详细步骤)
运维·microsoft·azure·devops
刘某的Cloud3 小时前
docker commit 封装镜像
运维·docker·容器·image
哇哦9823 小时前
渗透安全(渗透防御)②
linux·安全·渗透防御