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 是脚本的完整路径。

相关推荐
xiaoliuliu123451 小时前
Kylin V10 安装 compat-gcc-44-4.4.7-8.el7.x86_64.rpm 详细步骤
linux·运维·服务器
蓝黑20201 小时前
Ubuntu Linux安装搜狗拼音输入法
linux·ubuntu·输入法·pinyin
峰顶听歌的鲸鱼1 小时前
Kubernetes-Pod
linux·运维·云原生·容器·kubernetes·云计算
敲代码的哈吉蜂1 小时前
haproxy——socat热更新工具
linux·运维·服务器
IvanCodes1 小时前
十、Linux Shell脚本:流程控制语句
linux·云计算
小庄梦蝶2 小时前
宝塔使用nodejs管理器下载nodejs版本失败解决方式之一
linux·运维·前端
8125035332 小时前
DNS监控:生产实践
linux·网络·网络协议·tcp/ip·计算机网络
何中应2 小时前
解决Jenkins界面操作非常慢的问题
java·运维·jenkins
Unpredictable2222 小时前
Ubuntu 22.04 ROS2 Humble 源码编译安装 teb_local_planner 踩坑记录
linux·ubuntu·teb·自主导航·局部路径规划
was1722 小时前
轻量级多服务器监控:Beszel 的安装与实战部署
运维·服务器·状态监控