黑帽联盟

 找回密码
 会员注册
查看: 1874|回复: 0

[脚本语言] 对源ip地址的封锁脚本代码分享

[复制链接]

302

主题

18

听众

1008

积分

管理员

Rank: 9Rank: 9Rank: 9

  • TA的每日心情
    开心
    2026-7-7 22:30
  • 签到天数: 406 天

    [LV.9]以坛为家II

    网站受到大量主机的非正常连接时,可以用脚本来实现对源ip地址的封锁

    #!/bin/bash
    touch all
    for i in `seq 1 100` //控制脚本的循环
    do
    sleep 1 //时间控制
    ip=`tail -30 /var/log/a.log |grep HTTP/1.1|awk '{print $1}'|sort -n|uniq` //从一个假设的日志文件中截取非正常连接主机的ip地址,依据是攻击的特征
    if [ -z "$ip" ];then //  如果没有这种主机
    ehco "ok">>/dev/null
    else
    for m in `echo $ip` //如果有这些主机则遍历
    do
    n=`grep -l "^$m$" /root/all`// 从all文件里查看是不是已经被禁止过
    if [ $? -eq 1 ];then //如果没有被禁止过
    echo iptables -A INPUT -s $m -p tcp –dport 80 -j DROP
    echo "iptables -A INPUT -s $m -p tcp –dport 80 -j DROP"
    iptables -A INPUT -s $m -p tcp –dport 80 -j DROP //禁止
    echo $m>>/root/all //写到all文件中
    fi
    done
    fi
    service iptables save//保存iptables规则
    done
    保存退出

    您需要登录后才可以回帖 登录 | 会员注册

    发布主题 !fastreply! 收藏帖子 返回列表 搜索
    回顶部