- 前言
自开始搭建网站八爪鱼招标网到现在大概有四个多月的时间,搜索引擎收录方面也从零收录逐渐的发展到在百度有四十万的收录,在360搜索有四万多的收录,搜索引擎流入的流量也慢慢增多,今天上班时 发现网站出现有故障,主要表现如下:
1、网站访问非常缓慢;
2、静态页面也偶尔无法访问;
3、无法远程登录到服务器;
于是赶紧打开QQ、拿起电话向云服务器提供商寻求帮助,但一时半会儿那边也无法分析出什么原由,于是决定先让服务器重启试试(ps:这时情况已万分火急,只能访问静态页面了),重启后终于可以远程登录,于是打开服务器事件查看器发现有几项错误:
- 出现原因
1、为应用程序池"DefaultAppPool"提供服务的进程未能响应Ping,进程ID是"284"。
2、等待Windows Error Reporting Service服务的连接超时。
3、远程过程中服务器每隔几分钟假死一阵子。
从记录的事件日志来看应该是服务器及IIS超时及无响应造成的,有可能是在短时间内有大量的访问造成服务资源紧缺而无法响应,那这些请求是否正常呢?
- 造成IIS及服务器无法响应可能的原因
到底是什么请求,带头疑问想到了以下可能:
1、搜索引擎的抓取?
2、其他第三方采集我们站点的数据?
3、遭遇恶性攻击?
4、还是由于招标网的知名度太高,服务器无法承受过高的自然流量呢?(ps:自恋傻想了一下,大家勿喷~)
假设这时有一神器能帮我解决问题,哪怕只是查出造成服务器挂机的原因是,我将会感激涕零、热泪盈眶、谢天谢地,怀着感恩与对技术执着的精神,我终于找到了一款可以分析网站攻击的工具:
大家看看,多么邪恶的攻击啊,IP182.87.187.100,大多数攻击是SQL注入及跨站攻击,主要是去尝试执行php、asp、zip等文件;
- 任你虐我千百遍,我不当你是初恋
人家说:“纵使你虐我千百遍.我依然视你如初恋”,我才不要呢!!!
如何将攻击视为初恋,那我们的网站八爪鱼招标网将会像星爷那部《美人》一样,八爪鱼被烤着吃~~~
那如何防范这种攻击呢?
第一能想到的就是封IP,通过Windows Server 2008的防火墙功能将能预见的IP禁止掉:
建立入站规则禁止相关IP;
第二就是通过程序将这些IP或攻击名称(大部分攻击是以asp、php这样可执行文件)去禁止,如通过ASP.NET返回403状态码:
void Application_BeginRequest(object sender, EventArgs e) { if (SiteSetting.Instance.IsRecordUser > 0) { if (Request.RawUrl.Contains(".asp") || Request.RawUrl.Contains(".php")) { WebUtils.ProhibitIP(); //结束请求,返回403状况码 return; } } }
还有其它更好的方法吗?请分享,谢谢!
- 小广告
八爪鱼招标网是向*、企事业单位提供免费招标、采购信息的平台(http://www.8yu.cn),现在还需要持续改进,包括数据量、访问速度、版本、安全以及体验的问题,如果您能提供一点点想法及帮助在下万分感谢!