[点晴永久免费OA]如何使用ModSecurity WAF 防火墙来保护Windows IIS WEB网站 - 安装教程
|
admin
2024年7月5日 17:22
本文热度 511
|
前言
以前在 IIS 7 时,有使用 UrlScan 这个 WAF 来保护IIS,但目前 UrlScan 已无法用在 IIS 10 上面。
所以可以改使用 ModSecurity,以下介绍如何在 Windows 2019 有 IIS 的 Web Server 上安装启用 ModSecurity 。
实作
1、确定 IIS 已安装。
2、安装 ModSecurity
请到 ModSecurity Release
下载 ModSecurityIIS_2.9.4-64b.msi 安装。
![](/files/attmgn/2024/7/admin20240705171935210_0.jpg)
3、启用ModSecurity
预设ModSecurity 是安装在C:\Program Files\ModSecurity IIS 目录。
3.1.到C:\inetpub\wwwroot 目录建立一个modsecurity的目录,
3.2.将C:\Program Files\ModSecurity IIS 目录中的modsecurity.conf, modsecurity_iis.conf 及unicode.mapping 复制到C:\inetpub\wwwroot\modsecurity 目录。
3.3.修改C:\inetpub\wwwroot\web.config ,启用ModSecurity 的设定,如下:
-
<?xml version="1.0" encoding="UTF-8"?>
-
-
-
-
<ModSecurity enabled="true" configFile="c:\inetpub\wwwroot\modsecurity\modsecurity_iis.conf" />
-
-
预设ModSecurity 是侦测模式,所以请将它改成启用,修改c:\inetpub\wwwroot\modsecurity\modsecurity.conf
将SecRuleEngine DetectionOnly 改成SecRuleEngine On,
并在最后一行加上验证的Rule 如下:
SecRule ARGS:testparam "test" "id:1234,deny,status:403,msg:'Our test rule has triggered'"
Rule是说,如果QueryString的参数为 testparam 而且它的值为test,就会被ModSecurity 拒绝,并回传403。
4、重启IIS,查看事件检视器中应用程式中的ModSecurity 是否有无错误(如果没看到,可以直接用Browser 连http://localhost)。
![](/files/attmgn/2024/7/admin20240705171935677_2.jpg)
5、测试Rule 1234 是否会被挡。
开启Browser 连http://localhost/?testparam=test,就可以发现,网页会被ModSecurity 给挡住了
![](/files/attmgn/2024/7/admin20240705171936025_3.jpg)
参考资源
ModSecurity 手册
最新支持的 Visual C++ 下载
该文章在 2024/7/5 17:28:58 编辑过