一个脚本解决网站被doss和cc攻击

2019-03-25 00:15:03 作者: 三岁小弟弟 浏览: 560

DDoS deflate 是一个轻量级的 bash shell 脚本,每分钟会自动检测一次 IP 连接状况,当某些 IP 连接超过脚本设置好的阈值,程序会自动禁止这些 IP 一段时间,以达到防御攻击协助用户阻止 DDOS 攻击的目的。这是目前在软件层面上的简单和最容易安装的解决方案之一。

无论您的服务器是否被攻击,建议安装脚本,以防范于未然!

  • 安装教程

通过 ssh 工具如 putty、Xshell 登陆服务器,输入安装:

wget http://www.inetbase.com/scripts/ddos/install.sh
chmod 0700 install.sh
./install.sh

这个脚本非常小巧,下载安装速度非常快。几秒钟就搞定。安装完以后,你会看到一份协议,按 q 退出即可。

安装后文件目录为:/usr/local/ddos/

总共有四个文件,分别为
ddos.conf:
DDoS-Deflate 的配置文件,其中配置防止ddos时的各种行为

ddos.sh:
DDoS-Deflate 的主程序,使用shell编写的,整个程序的功能模块

ignore.ip.list:
白名单,该文件中的ip超过设定的连接数时,也不被 DDoS-Deflate 阻止

LICENSE:
DDoS-Deflate 程序的发布协议
  • 使用教程

安装好打开配置文件可以看到有简洁的说明,不够详细。下面列出中文对照,大家可以根据自己的服务器情况进行修改。

##### Paths of the script and other files
PROGDIR=”/usr/local/ddos”
PROG=”/usr/local/ddos/ddos.sh”
IGNORE_IP_LIST=”/usr/local/ddos/ignore.ip.list” 
# 白名单。如有反向代理,注意添加本机地址和本机外网IP地址,防止提供反向代理的主机被判定为攻击。
CRON=”/etc/cron.d/ddos.cron”
APF=”/etc/apf/apf”
IPT=”/sbin/iptables”##### frequency in minutes for running the script
 
##### Caution: Every time this setting is changed, run the script with cron
##### option so that the new frequency takes effect
FREQ=1
#####检查时间间隔,默认1分钟。一般不用修改 
 
##### How many connections define a bad IP? Indicate that below. 
NO_OF_CONNECTIONS=150
#####单IP发起连接数阀值,达到这个数值IP就被拦截。不建议设置太低。
 
##### APF_BAN=1 (Make sure your APF version is atleast 0.96)
##### APF_BAN=0 (Uses iptables for banning ips instead of APF) 
APF_BAN=1
#####一般情况下使用iptables来做防火墙,所以这里你需要将APF_BAN的值改为0。
 
##### KILL=0 (Bad IPs are’nt banned, good for interactive execution of script)
##### KILL=1 (Recommended setting)
KILL=1 
#####是否屏蔽IP,默认即可
 
##### An email is sent to the following address when an IP is banned. 
#####当单IP发起的连接数超过阀值后,将发邮件给指定的收件人。
##### Blank would suppress sending of mails
EMAIL_TO=”mikelin@wanlins.com” 
#####这里是邮箱,可以替换成你自己的邮箱。
 
##### Number of seconds the banned ip should remain in blacklist. 
BAN_PERIOD=600
#####设置被挡IP多少秒后移出黑名单。
  • 卸载方法

直接输入以下命令即可卸载

wget http://www.inetbase.com/scripts/ddos/uninstall.ddos
chmod 0700 uninstall.ddos
./uninstall.ddos
  • 使用心得

1.如何验证脚本的有效性?

使用 web 压力测试,自己攻击自己;或者是修改连接阈值至个位数。一般网站数据库的连接数不会低于个位数吧

2.重新启动服务器之后脚本会自动运行吗?

会自动运行

3.怎么查看被屏蔽 IP?

用 iptables -L -n 命令可以查看被屏蔽的 IP

4.需要注意点什么?

采用 CDN 加速的网站不适于用这脚本,CDN 节点缓存服务器 IP 百分百会被封掉。


若无特殊注明,本文皆为《三岁小弟弟》原创,转载请保留文章出处。
转载注明:三岁资源网»一个脚本解决网站被doss和cc攻击
免责声明:本网站的资源部分来源于网络,如有侵权,请联系站长进行删除处理。
评论
本文作者 阅读排行 文章推荐

首页
最新
投稿
精选
我的