C# MVC:防止对 ASP.NET 站点进行拒绝服务 (DOS) 攻击的好方法是什么?

Ale*_*lex 1 c# asp.net asp.net-mvc denial-of-service

我正在寻找一种既便宜又好用的方法来防止对我的 ASP.NET MVC 站点的拒绝服务攻击。

我一直在考虑一个解决方案,它拦截 HttpHandler 然后计算 Cache 对象中的请求,关键是像“RequestCount_[IpAddressOfRequestClient]”这样的东西,但这似乎会产生一个疯狂的开销。

任何想法将不胜感激。谢谢!

Mat*_*man 5

您可能会考虑尝试限制请求。通过 IP 和/或 cookie 识别用户并将请求限制为(例如)每两秒 1。人类不会注意到,但这会大大减慢机器人的速度。

这在应用程序级别有所帮助(保护您的应用程序/数据库),但它不是一个完整的解决方案,因为点击仍然来自网络级别。

作为前线防御,我可能会依赖硬件。许多 ISP 提供了一些保护,例如:http : //www.softlayer.com/facilities_network_n2.html