这篇文章主要介绍“怎么预防PHPDDOS的发包攻击别人”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“怎么预防PHPDDOS的发包攻击别人”文章能帮助大家解决问题。
说下防止phpddos发包的方法
复制代码 代码如下:
if (eregi("ddos-udp",$read)) {
fputs($verbinden,"privmsg $channel :ddos-udp – started udp flood – $read2[4]\n\n");
$fp = fsockopen("udp://$read2[4]", 500, $errno, $errstr, 30);
if (!$fp)
{
$fp = fsockopen("udp://$read2[4]", 500, $errno, $errstr, 30);
既然是用fsockopen()函数请求外部,那就不让他请求
php.ini里设置
allow_url_fopen = off
如果这样他还是能发包
extension=php_sockets.dll
改成
;extension=php_sockets.dll
重启apache、iis、nginx
这样就可以防止php ddos发包了
对这种攻击的处罚政策是,
further violations will proceed with these following actions:
1st violation - warning and shutdown of server. we will allow 24 hours for you to rectify the problem. 第一次是警告+关机,给24小时的时间来解决问题
2nd violation - immediate reformat of server. 第二次是立即格式化服务器
3rd violation - cancellation with no refund. 第三次是取消服务并不给退款
针对这个问题,给一个简单的描述,
表现特征:一打开iis,服务器的流出带宽就用光-----就是说服务器不断向别人发包,这个情况和受到ddos攻击是不同的,ddos是不断收到大量数据包.
解决办法:
先停止iis,这样就暂时没法对外攻击了,然后
禁止上述的代码:
在c:\windows\php.ini里设置:
disable_functions =gzinflate,passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,pfsockopen,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server,fsocket,fsockopen
在c:\windows\php.ini里设其值为off
allow_url_fopen = off
并且:
;extension=php_sockets.dll
前面的;号一定要有,意思就是限制用sockets.dll
前面的;号要保留
然后启动iis
在ip策略,或防火墙中,禁止所有udp向外发送
linux下解决办法
一、禁止本机对外发送udp包
iptables -a output -p udp -j drop
二、允许需要udp服务的端口(如dns)
iptables -i output -p udp --dport 53 -d 8.8.8.8 -j accept
绿色“53”,为dns所需要的udp端口,黄色“8.8.8.8”部分为dns ip,根据您服务器的设定来定,若您不知您当前服务器使用的dns ip,可在ssh中执行以下命令获取:
cat /etc/resolv.conf |grep nameserver |awk 'nr==1{print $2 }'
附完整iptables规则
复制代码 代码如下:
#iptables -a input -p tcp -m tcp --sport 53 --dport 1024:65535 -m state --state established -j accept
#iptables -a input -p udp -m udp --sport 53 --dport 1024:65535 -m state --state established -j accept
#iptables -a output -p tcp -m tcp --sport 1024:65535 -d 8.8.4.4 --dport 53 -m state --state new,established -j accept
#iptables -a output -p udp -m udp --sport 1024:65535 -d 8.8.8.8 --dport 53 -m state --state new,established -j accept
#iptables -a output -p udp -j reject
#/etc/rc.d/init.d/iptables save
# service iptables restart
#chkconfig iptables on
开放 对外 以及对内的 dns端口 53
禁止其他全部出站的udp 协议
开机启动iptables
另外要说明的是,上面的代码是因为我服务器使用的是谷歌的dns来解析,我服务器端对外的访问(在服务器端上网,就需要,如果只是单纯的服务器,不进行 yum安装也可以不用),因此我开放对8.8.4.4和8.8.8.8的访问,如果你不是设置为谷歌的dns,那么这里要自行修改成你的dns。使用的 dns是什么可以用下面方法查询
关于“怎么预防PHPDDOS的发包攻击别人”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注亿速云行业资讯频道,小编每天都会为大家更新不同的知识点。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。