我们的ASP.NET网站托管在Windows Server 2008和IIS7上。
最近,我们遇到了来自某些IP的“攻击”,这些IP通过提交带有无效参数的不同表单生成大量错误。
我希望能够基于ASP.NET代码生成的列表,在24小时内阻止一系列IP地址。我知道可以使用Web.config中的ipSecurity标签实现此目的。我找到了以下示例:
是否可以更新已阻止的 IP 列表而不进行池回收?
编辑:
也许更好的想法是使用 HttpModule - Scott Hanselman 在他的博客中写了一篇关于这个主题的文章: http://www.hanselman.com/blog/AnIPAddressBlockingHttpModuleForASPNETIn9Minutes.aspx 你认为这会造成性能损失吗?将所有网站请求通过 httpmodule 进行路由可能会对页面加载时间产生影响吗? 还有其他方法可以完成此操作吗?
编辑 2:
该网站受 Fortigate 200a 防火墙保护,但据我所知,防火墙无法自动阻止生成错误或尝试进行 SQL 注入的 IP。
最近,我们遇到了来自某些IP的“攻击”,这些IP通过提交带有无效参数的不同表单生成大量错误。
我希望能够基于ASP.NET代码生成的列表,在24小时内阻止一系列IP地址。我知道可以使用Web.config中的ipSecurity标签实现此目的。我找到了以下示例:
http://www.dantor.com/support/misc/web-config-ip-address-restriction.aspx
问题在于更改/更新 web.config 会导致网站重新启动/回收。是否可以更新已阻止的 IP 列表而不进行池回收?
编辑:
也许更好的想法是使用 HttpModule - Scott Hanselman 在他的博客中写了一篇关于这个主题的文章: http://www.hanselman.com/blog/AnIPAddressBlockingHttpModuleForASPNETIn9Minutes.aspx 你认为这会造成性能损失吗?将所有网站请求通过 httpmodule 进行路由可能会对页面加载时间产生影响吗? 还有其他方法可以完成此操作吗?
编辑 2:
该网站受 Fortigate 200a 防火墙保护,但据我所知,防火墙无法自动阻止生成错误或尝试进行 SQL 注入的 IP。