最近有很多web服务器受到攻击,但这种攻击不是平常的ddos攻击,而都是对外发包,一般被机房发现任何人免不了被拔网线的痛苦,解决方法,大多叫重装系统等,其实这解决不了问题,因为你重装后站架上去还是会对外发包,还有一种方法解决只有加硬防,这样过滤掉一些数据包。

真正受到这样的攻击,上面肯定是有php站点,网络上有很多解决方法,我们也可以用,比如我们在php.ini里面禁用fsocketopen函数,还有关闭url_open等,以及在系统策略里面禁用udp协议,但只让通过udp协议的53端口(也许这句我说的不对,但大概是这样)其实这些是利用对外发udp协议的包才这样做,最近又有利用tcp协议来对外发包,都是对外部服务器的80端口发包,这样真难了服务器管理员,因为封了对外的80端口,可有些采集或DZ的云服务都用不了,所以只能再单独开对DZ的云服务器的IP开放80了,其实最关键的还是要找到那个对外发包的站点,的某个文件。如果是在linux下就有点难了。今天我用了如下命令可以查找:
 

# find <directory> -type f -name "*.c" | xargs grep "<strings>"

<directory>是你要找的文件夹;如果是当前文件夹可以省略
-type f 说明,只找文件
-name "*.c"  表示只找C语言写的代码,从而避免去查binary;也可以不写,表示找所有文件
<strings>是你要找的某个字符串

我按上面的详解就改了一下成自己所用如:find ./ -type f |xargs grep "port"
就是我要查找如port关键字字符串,在当前目录下。Linux的策略只能在iptables上弄了。怎么加规则请看我的iptalbes的文章。