侧边栏壁纸
博主头像
lance

不为失败找借口,只为成功找方法。

  • 累计撰写 28 篇文章
  • 累计创建 0 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

Linux 防御 CC 或 DDoS 攻击简单shell脚本文件

lance
2025-05-27 / 0 评论 / 0 点赞 / 43 阅读 / 382 字
温馨提示:
本文最后更新于 2025-05-27,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

以下是一个自动防御 CC 和 DDoS 攻击的脚本,它将监视服务器上的连接,并拉黑任何尝试通过大量连接攻击服务器的IP地址。同时,它将所有拉黑的IP地址输出到一个文本文件中,以便管理员进行审计和管理。

#!/bin/bash
# 创建IP黑名单文件,如果不存在
BLACKLIST_FILE=/etc/blacklist.txt
touch $BLACKLIST_FILE
# 设置触发阈值
THRESHOLD=500
while true; do
  # 获取当前活跃的连接数
  CONNECTIONS=$(netstat -an | grep -E ':80|:443|:3306' | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n)
  # 检查是否有IP地址超过阈值
  while read line; do
    COUNT=$(echo $line | awk '{print $1}')
    IP=$(echo $line | awk '{print $2}')
    # 如果连接数大于阈值,则拉黑IP地址
    if [ $COUNT -gt $THRESHOLD ]; then
      if ! grep -q "$IP" "$BLACKLIST_FILE"; then
        echo "拉黑IP地址: $IP"
        echo "$IP" >> $BLACKLIST_FILE
        iptables -A INPUT -s $IP -j DROP
      fi
    fi
  done <<< "$CONNECTIONS"
  # 将拉黑的IP地址输出到ip.txt文本中
  cat $BLACKLIST_FILE > ip.txt
  # 等待30秒,然后重复循环
  sleep 30
done

请注意,这仅仅是一个简单的脚本,无法确保完全防止所有类型的攻击。建议使用专业的安全工具和技术来保护服务器免受攻击。同时,拉黑IP地址可能会对合法用户产生影响,因此可以根据需要进行调整。

0

评论区