服务器被DDos攻击造成网站service unavailable的解决办法
站长头痛的事情,应该是服务器被DDos,DDos攻击后,网站出现service unavailable的错误。http://files.blogcn.com/wp04/M00/05/69/wKgKDU_BzOQAAAAAAAA1rVSMdNA700.jpg服务器IIS日志都有1G多,HTTPERR日志几十G,把硬盘爆棚了。http://files.blogcn.com/wp06/M00/03/1A/wKgKDU_BzwAAAAAAAACNm3Ah8sk364.jpgHTTPERR是IIS访问错误的日志。先关闭HTTPERR,运行里输入 regedit 进入注册表编辑器。在右边 点鼠标右键 新建dword值 EnableErrorLogging 重新启动服务器就可以了
"EnableErrorLogging"=dword:00000000
来看服务器日志。http://files.blogcn.com/wp05/M00/05/5F/wKgKDU_B0FkAAAAAAAEFKz0TmYY496.jpg对index.html 的静态页面也这么暴力。根据网站service unavailable判断,看来是基于负载形式的攻击模式,IP源头都是国内,那就没有伪处理。首先要区分开正常访问,和攻击的IP。先把网站停止,修改日志文件,让IIS重新生成一份攻击日志,再来用VBS处理下处理攻击IP。'代码开始
targeturl = "/index.html" '受攻击网站的URL地址。
logfilepath = "C:\WINDOWS\system32\LogFiles\W3SVC1\ex120526.log" '受攻击网站的日志路径。
On Error Resume Next
Set fileobj = CreateObject("scripting.filesystemobject")
Set fileobj2 = CreateObject("scripting.filesystemobject")
Set myfile = fileobj2.opentextfile(logfilepath, 1, False)Do While myfile.atendofstream <> True
myline = myfile.readline()
myline2 = Split(myline, " ")
newip = myline2(9)
myurl = myline2(5)
If targeturl = myurl Then
writelog newip
End If
Loopmyfile.Close
Set fileobj2 = Nothing
Msgbox "结束."Sub writelog(errmes)
ipfilename = "ip.txt"
Set logfile = fileobj.opentextfile(ipfilename, 8, True)
logfile.writeline errmes
logfile.Close
Set logfile = Nothing
End Sub
'代码结束生成 ip.txt 文件。用去除文本文件中重复行的程序,对IP进行过滤。这样过滤出来的IP,就是攻击IP了。
接下来用批处理控制ipseccmd写组策略批量屏蔽IP。@sc config PolicyAgent start= AUTO
@net start PolicyAgent
@for /f %%i in (ip.txt) do (ipseccmd -w REG -p "DDosStop" -r "%%i" -f %%i/255.255.255.255=0/255.255.255.255:: -n BLOCK -x)网站访问正常。 图挂了?
页:
[1]