免费国外空间,国外免费空间,'s Archiver

idc886 发表于 2012-3-5 13:38

VPS 防御DDOS攻击 - 防御/减轻DDOS攻击 Linux下防御DDOS攻击 DDoS deflate

[b][size=3][color=#0000ff]一键安装脚本:[/color][/size][/b]
[code]wget http://vps.idc866.com/ddos.sh;sh ddos.sh[/code]


[b][color=blue]操作:[/color][/b]

1为安装,  0为删除。   

安装中间会显示一个协议,按Q退出查看。
执行后无需再去修改配制文件,即自动生效

   [b][color=#ff0000]注:[/color][/b]配制中间链接数限制为50, 适合VPS。         
如果独服请自行修改大,免得封禁蜘蛛。如设100或更高。

更多详细请看以下的说明:



[color=red][b]注:12年7月  一VPS被大量的刷连接了,[/b][/color]  
      一个IP都可一秒就刷到几百,上千个,刷同一个页。
      而且是  大量的IP, 这个 DDoS deflate  封都封不完。(他1分钟起效的)
      把禁止访问时间设为10小时,都还有大量IP来刷。也检测也没用代理IP。
      最后使用iptables 规则限制IP每秒产生新连接数15个来解决。
      产生20个都防不住,限制产生5个自己打不开论坛站,限制10个打开感觉慢。
      不过,这种限制,对蜘蛛有影响。

[b][color=#ff0000]注:14年3月  一服务器被大量的刷连接了,[/color][/b]  
      大量IP来刷,这个 DDoS deflate  封都封不完。(他1分钟起效的)
      因有的IP连接数未达到 封禁值,无法起效。

[b][color=blue]最后使用:[/color][/b]
1、查看网站日志,查看他们是刷哪一个页。
2、把这一页查看源码,保存为html真静态文件传上去,由他们刷。
3、虽然真静态无负载,但流量占用达几M/s,
    最后查看日志,用php把日志中刷此页的IP全列出来,生成iptables 脚本
    批量执行一下,就全封了。
------------------------------------------------------------



VPS 防御DDOS攻击 -  防御/减轻DDOS攻击  

Linux下防御DDOS攻击 DDoS deflate  



使用 DDoS deflate  来防御攻击,效果还是有些的。并且不占资源。

他是判断同一IP的连接数,再来禁止此IP连接。[11]2[/11]

如果大规模同时攻击你服。那么可能抗不住。因为大规模攻击时,一攻就挂了。

这程序还没反应过来,和执行禁止。这程序是 每分钟执行一次,不是每秒执行。

人家有组织大规模攻击时,都是多台电脑同时发起。攻击挂掉不需要在1分钟。

小流量攻击用这软件或许效果有,如1分钟内没把服攻击挂,这程序就自动执行禁止。

如果,再配合论坛的防CC 开关、[url=http://www.idc866.com/thread-14898-1-1.html]FFS Firewall V1.3[/url] 等,抗攻击效果更好。

[url=http://www.idc866.com/thread-14898-1-1.html]防CC攻击,FFS Firewall v1.3_应用程序防火墙 抵抗DDOS攻击的能力[/url]






[size=4][size=5][color=blue][b]一、安装:[/b][/color][/size]    ([/size]以root帐户登录SSH,操作以下三部)

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

1、下载DDoS  deflate
2、添加权限
3、执行安装

执行安装后,一下就安装完成了。  就会提示协议,按Q退出。

[color=blue]安装完后,就自动执行了程序的,并且放在了启动项里,VPS启动后也自动执行。[/color]


[color=#ff0000]注:使用了CDN的,将无效。  因为CDN都是以127.0.0.1 IP访问。[/color]
[color=#ff0000]     使用了 LNMPA 的也将无效。 也是以 127.0.0.1 来访问。[/color]
[color=#ff0000]     如果使用反代加速的话,就要注意来源IP。或许加入白名单。[/color]
[color=#ff0000][/color]
[color=blue]      国外那个 cloudflare CDN加速 其实很抗攻击的。 别让人家知道真实IP即可。
     用了 cloudflare CDN 后,来访问IP都会变成 加州CDN的IP,而且很多的IP段,[/color]
[color=blue]     所以,使用了CDN后,最好别使用 这个防DDOS的程序,[/color]
[color=blue]     或是把CDN的IP都添加到白名单中。不然CDN的IP被禁止后,就会出现CDN的错误页
[/color]
[color=#0000ff][color=#444444][/color][/color][color=#0000ff][/color]

[color=#ff0000]    [/color]



[size=5][color=#0000ff][b]二、使用:[/b][/color][/size]
[size=5][color=#0000ff][/color][/size]
一般VPS,都带有 iptables ,此程序可设定使用 iptables 来禁止 IP。[33]3[/33]

[color=blue]安装后,再修改: /usr/local/ddos/ddos.conf  这个配制文件里的:[/color]
[color=blue][/color]
[color=blue]APF_BAN=1     改为   APF_BAN=0   [/color]
[color=red]# 意思是使用 iptables 来防御[/color]

NO_OF_CONNECTIONS=150
[color=#ff0000]# 意思是同一IP超过150个链接,就阻止。     (我们VPS设为50,一般访问足足够)          [/color]

BAN_PERIOD=600
[color=#ff0000]# 意思是阻止时间为 600秒               (我们设为9600,阻止时间更长点160分)[/color]


以上参数,可自行设置。

可在SSH里直接使用 vi命令来编辑 [color=#0000ff]ddos.conf 文件[/color]。   

或是 WinSCP 软件登录SSH,找到那个文件直接编辑

[color=red]注:修改后保存,就生效,无需重启VPS。[/color]







[b][size=5][color=#0000ff]三、检测是否工作正常、测试:[/color][/size][/b]
**** Hidden Message *****
其它: (这个不用操作,只是收集)
a、/usr/local/sbin/ddos  --h     查看参数信息

b、/usr/local/ddos/ddos.sh --cron   这个是安装时默认就执行了。






[b][size=5][color=#0000ff]四、如何防御,防御就会有邮件,怎么看。[/color][/size][/b]

[b]1、SS里使用以下命令查看:[/b]
netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n

就会列出VPS上,当前访问IP,和链接数。
如果链接数超过150个,就会在下一分钟后被 iptables 禁止访问10分钟。

[color=blue][b]注:[/b][/color]使用刚安装的DDOS:/usr/local/sbin/ddos   也同样可查看当前链接数。



[b]2、查看防御 后的邮件提醒:[/b]

如果你修改了配制文件:[color=#0000ff]/usr/local/ddos/ddos.conf    中的[/color]
EMAIL_TO="root"   //当IP被屏蔽时给指定邮箱发送邮件,推荐使用,换成自己的邮箱即可

[color=blue]换成了你的邮箱。如果你VPS支持 sendmail 发信,那就会发到你邮箱里。
[/color]查看是否支持sendmail,可用执行一下看:/etc/init.d/sendmail
或是自己上传一个PHP探针,下面一个邮箱检测,测试一下发信看。




[b]3、查看root 的邮件提醒[/b]

如果未改动 "root"。就会你每次登录 root 时会提醒:you have new mail

或是 :You have new mail in /var/spool/mail/root

你有新的邮件提醒,[b]可使用命令:mail      [/b]后,再选择序号,来查看邮件

或是直接SFTP里下载/var/spool/mail/root 这个文件,用写字板打开查看。







[b][size=5][color=#0000ff]五、相关文件说明:
[/color][/size][/b]      
ddos.conf -- DDoS-Deflate 的配置文件,其中配置防止ddos时的各种行为
ddos.sh   -- DDoS-Deflate 的主程序,使用shell编写的,整个程序的功能模块
ignore.ip.list -- 白名单,该文件中的ip超过设定的连接数时,也不被 DDoS-Deflate 阻止
LICENSE   -- DDoS-Deflate 程序的发布协议[55]5[/55]

这几个文件,都在 /usr/local/ddos/  目录下

/usr/local/sbin/ddos   这个是自动执行 也就是ddos.sh






[b][size=5][color=#0000ff]六、如何卸载脚本:[/color][/size][/b]
[code]wget http://www.inetbase.com/scripts/ddos/uninstall.ddos
chmod 0700 uninstall.ddos
./uninstall.ddos[/code]
如果不想要他,也可以直接去删除他的几个文件也是可以的。






[b][size=5][color=#0000ff]七、相关问题:[/color][/size][/b]

执行检测时,有些系统会提示:    $CONF not found.

[b][color=blue]解决方法是:[/color][/b]**** Hidden Message *****
[color=red][b]注:[/b][/color]在几VPS上安装没问题。但在KVM的VPS上装的Debian系统,检测时出现了这问题
      最后在这找到解决:[url=http://ubuntuforums.org/showthread.php?t=1224448]http://ubuntuforums.org/showthread.php?t=1224448[/url]




[color=blue]    此DDOS防护软件,很检测超连接数的,再使用 iptables  来阻止访问。[/color]
[color=blue]    在阻止的同时,将会把IP写到 [color=#444444]ignore.ip.list [/color]文件中,[/color]
[color=blue]    过了设定禁止时间后,再从此文件中去除添加的IP,也从 iptables 规则中去掉IP,[/color]
[color=#0000ff][/color]
[color=#0000ff]    [/color][color=red]但是:发现有些VPS时间过后,无法从 iptables 中去掉IP,也就是说临时长久禁止IP了。[/color]
[color=#0000ff]            [color=red]也 不从  ignore.ip.list  文件里去掉IP,[/color][color=#444444] [/color][/color]
[color=#0000ff][color=#444444]           这样就会造成:VPS一但重启后[color=#0000ff]iptables加的IP消息[/color],[/color][/color]
[color=#0000ff][color=#444444]           但这些在ignore.ip.list文件里的IP将成是白名单,永远不会封了。[/color][/color]



如还有其它问题,请跟贴。

idc886 发表于 2012-3-5 13:40

收集: [url=http://www.vpser.net/security/ddos-deflate.html]http://www.vpser.net/security/ddos-deflate.html[/url]


[b]前言[/b]

互联网如同现实社会一样充满钩心斗角,网站被DDOS也成为站长最头疼的事。在没有硬防的情况下,寻找软件代替是最直接的方法,比如用iptables,但是iptables不能在自动屏蔽,只能手动屏蔽。今天要说的就是一款能够自动屏蔽DDOS攻击者IP的软件:[color=#0000ff]DDoS deflate[/color]。

[b]DDoS deflate介绍[/b]
[color=#0000ff]DDoS deflate[/color]是一款免费的用来防御和减轻DDoS攻击的脚本。它通过netstat监测跟踪创建大量网络连接的IP地址,在检测到某个结点超过预设的限 制时,该程序会通过APF或IPTABLES禁止或阻挡这些IP.
DDoS deflate官方网站:[url=http://deflate.medialayer.com/][color=#0000ff]http://deflate.medialayer.com/[/color][/url]


[b]如何确认是否受到DDOS攻击?
[/b]

执行:
netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n

执行后,将会显示服务器上所有的每个IP多少个连接数。

以下是我自己用VPS测试的结果:
li88-99:~# netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n
1 114.226.9.132
1 174.129.237.157
1 58.60.118.142
1 Address
1 servers)
2 118.26.131.78
3 123.125.1.202
3 220.248.43.119
4 117.36.231.253
4 119.162.46.124
6 219.140.232.128
8 220.181.61.31
2311 67.215.242.196

每个IP几个、十几个或几十个连接数都还算比较正常,如果像上面成百上千肯定就不正常了。


[b]1、安装DDoS deflate[/b]
wget [url=http://www.inetbase.com/scripts/ddos/install.sh]http://www.inetbase.com/scripts/ddos/install.sh[/url]   //下载DDoS  deflate
chmod 0700 install.sh    //添加权限
./install.sh             //执行




[b]2、配置DDoS deflate[/b]

下面是DDoS deflate的默认配置位于/usr/local/ddos/ddos.conf ,内容如下:

##### 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就会被屏蔽,一般默认即可

##### 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        //使用APF还是iptables。推荐使用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.
##### Blank would suppress sending of mails
EMAIL_TO="root"   //当IP被屏蔽时给指定邮箱发送邮件,推荐使用,换成自己的邮箱即可

##### Number of seconds the banned ip should remain in blacklist.
BAN_PERIOD=600    //禁用IP时间,默认600秒,可根据情况调整


用户可根据给默认配置文件加上的注释提示内容,修改配置文件。

查看/usr/local/ddos/ddos.sh文件的第117行 [indent]
netstat -ntu | awk ‘{print $5}’ | cut -d: -f1 | sort | uniq -c | sort -nr > $BAD_IP_LIST[/indent]
修改为以下代码即可! [indent]
netstat -ntu | awk ‘{print $5}’ | cut -d: -f1 | sed -n ‘/[0-9]/p’ | sort | uniq -c | sort -nr > $BAD_IP_LIST[/indent]
喜欢折腾的可以用[url=http://www.vpser.net/opt/webserver-test.html][color=#0000ff]Web压力测试软件[/color][/url]测试一下效果,相信[color=#0000ff]DDoS deflate[/color]还是能给你的VPS或服务器抵御一部分DDOS攻击,给你的网站更多的保护。

idc886 发表于 2012-3-5 13:43

再顶个贴,做回复!

jason5545 发表于 2012-3-5 15:00

用下..........

wyk325 发表于 2012-3-5 15:53

太好了,谢谢。

76546468 发表于 2012-4-12 09:10

这个占内存不?

龙腾宇内 发表于 2012-4-13 07:58

我就是来看看

龙腾宇内 发表于 2012-4-13 08:03

[b]回复 [url=http://idc866.com/redirect.php?goto=findpost&pid=109029&ptid=14897]3#[/url] [i]idc886[/i] [/b]


    我把root已经修改为自己的邮箱了,可是,还是收不到邮件,只是每次登录SSH才能用mail命令看,我vps是支持sendmail的,奇怪了。另外,邮件查看了能删除吗?

idc886 发表于 2012-4-13 12:48

[b]回复 [url=http://www.idc866.com/redirect.php?goto=findpost&pid=112509&ptid=14897]8#[/url] [i]龙腾宇内[/i] [/b]


    因为你还没有达到 150个链接数,把值设小再测试。

现在更新了贴中的测试内容,照着操作去。

idc886 发表于 2012-4-13 12:48

[b]回复 [url=http://www.idc866.com/redirect.php?goto=findpost&pid=112452&ptid=14897]6#[/url] [i]76546468[/i] [/b]


    基本不占资源。

kaka 发表于 2012-4-13 16:38

有用吗?
有用c大,就不会被ddcc一个星期了

idc886 发表于 2012-4-13 16:46

[b]回复 [url=http://www.idc866.com/redirect.php?goto=findpost&pid=112552&ptid=14897]11#[/url] [i]kaka[/i] [/b]


    能防一点是一点。加了这个总比没加好。   


人家的还是服,所以一直不倒。

VPS的话,大牛来了,几秒搞死。

idc886 发表于 2012-4-13 16:52

[b]回复 [url=http://www.idc866.com/redirect.php?goto=findpost&pid=112552&ptid=14897]11#[/url] [i]kaka[/i] [/b]


    还有。为啥  当时他们不试试 cloudflare 性能。  

据说  强抗攻!

youzengwei 发表于 2012-7-24 00:53

谢谢啦  好东西啊

243731608 发表于 2012-8-1 22:14

学海无涯!!!!

lunlun 发表于 2012-8-29 20:42

[url]http://22lou.net[/url]

cjwbbs 发表于 2012-8-30 08:39

回复一下吧!

q865583446 发表于 2012-9-28 15:13

kabaja

345139759 发表于 2013-4-11 19:41

顶顶顶顶顶

wei12580 发表于 2013-10-3 18:36

顶楼主啦..希望楼主多发精品好帖啦.....

as123456 发表于 2014-1-11 12:34

看看················

as535364 发表于 2014-2-7 16:30

感謝站長無私奉獻

dxgg123 发表于 2014-2-11 10:14

dddddddddddddddd

1071310719 发表于 2014-3-15 14:21

[b]回复 [url=http://idc866.com/redirect.php?goto=findpost&pid=109027&ptid=14897]1#[/url] [i]idc886[/i] [/b]


    谢谢大家!!!

379920779 发表于 2014-7-21 22:19

[b]回复 [url=http://www.idc866.com/redirect.php?goto=findpost&pid=109028&ptid=14897]2#[/url] [i]idc886[/i] [/b]


    大家我来了···你懂得

zhr890712 发表于 2014-9-22 22:23

楼主好人啊!

aizhu 发表于 2014-9-26 20:13

支持一下哈哈】

leisun321 发表于 2014-11-1 19:30

顶楼主啦..希望楼主多发精品好帖啦.....

焦泠儿 发表于 2015-2-27 08:19

学习了,在这里学了挺多的。

a877059905 发表于 2019-10-24 13:39

学习一下

页: [1]


Powered by Discuz! Archiver 7.2  © 2001-2012 Comsenz Inc.