如何在 Plesk 中使用和管理 Web 应用程序防火墙 (ModSecurity)

Demon| 2016-07-15 教程, Plesk 评论数( 0 )

为了检测和阻止对 web 应用程序的攻击,web 应用程序防火墙 (ModSecurity) 会检测所有违反规则集的到 web 服务器的请求以及来自服务器的相关响应。如果检查成功,该 HTTP 请求就会被传递给网站以获取内容。如果检测失败,则会执行预定义的操作。

Linux 和 Windows 版的 Plesk 都支持 ModSecurity,它以一个 web 服务器(Apache 或 IIS) 模块的形式存在和工作。

注意: 若要使用 web 应用程序防火墙 (ModSecurity), 从 Plesk 11.5 升级的管理员必须要从 Plesk 或其供应商获取 Plesk 12 的许可证密钥。

启用 ModSecurity

若要启用 web 应用程序防火墙,请如下操作:

1.请进入 工具与设置 > Web 应用程序防火墙 (ModSecurity)(在 安全 组里)进行操作。

如果您没有看到该链接,请进入 工具与设置 > 更新与升级 > 添加/移除组件 > 主机 组里安装 ModSecurity 组件。

2.设置 web 应用程序防火墙模式为 启用仅检测。会针对一组规则对每次接收的 HTTP 请求以及相应响应进行检查。如果检查成功,该 HTTP 请求就会被传递到网站以获取内容。如果检查失败,将会记录该事件。在 仅检测 模式中,不会执行任何其他操作。在 启用 模式中,HTTP 响应将会提供一个错误代码。

注意: 可在服务器和域名级别设置 web 应用程序防火墙模式。但是,域名级别模式不能高于服务器级别模式的设置。例如,如果服务器级别的 web 应用程序防火墙在 仅检测 模式中运行,您将无法为域名设置 启用 模式。只会显示 关闭仅检测 模式。

3.选择 web 应用程序防火墙引擎要为每个接收 HTTP 请求进行检测所需的规则集,或上传自定义规则集。您可以设置以下规则集:

oAtomic Basic ModSecurity - Atomic ModSecurity 规则的免费 starter 版本,与 Plesk 绑定。包含重要的安全特性和按月发行的 bug 修复程序。 

oOWASP ModSecurity Core Rule Set (CRS) - CRS 会对在 web 应用程序中找到的未知漏洞提供常规保护。该规则集免费。该规则集非常严格,若要在生产环境下使用则需要额外调整。当选定了该规则集时,部分 WordPress 功能失效,web 邮箱和文件共享完全不能运行。因而可使用 Atomic 或 Comodo 规则集来替代。

oAtomic ModSecurity Rule Set - 最新最强大的规则版本,所有性能得以提升,新增安全功能,包含由 Atomicorp GotRoot 每日发行的 bug 修复程序。这是一个商用的规则集,完全支持和适合生产用途。若要在 Plesk 中启用该规则集,请在 Atomic 网站上注册并提供您的用户名和密码。

警示 (Linux): 如果您选择了 Atomic 规则集请执行以下流程以确保 ModSecurity 运行正常。在服务器上运行 aum -u 命令。Plesk modsecurity 程序包将被来自 Atomic 库的程序包所替代。然后运行以下命令:

  • plesk sbin modsecurity_ctl --disable
  • plesk sbin modsecurity_ctl –enable
  • service httpd restart

oComodo ModSecurity Rule Set (Linux)- 这是一个简单易用、可自定义规则的流量控制系统,应用频繁更新的规则数据库保护您的 web 应用程序防止黑客攻击。该规则集免费。若要在 Plesk 中启用该规则集,请在 Comodo 网站上注册并提供您的用户名和密码。

o自定义 – 您可以上传自定义的 web 应用防火墙规则集,例如来自 Atomic 的试用包或来自 Comodo 免费程序包。支持的格式:zip、tar.gz、tgz、tar.bz2、conf。

4.若要自动更新选定的规则集,请选择 更新规则集 复选框并选择更新时段。

5.选择预设的参数集或指定自定义的 ModSecurity 指令。您可以选择以下预设的参数集:

oFast,当 HTTP 请求 URI 和部分信息头被分析时。该模式消耗的 CPU 最少。

oTradeoff,当 HTTP 请求 URI、信息头和请求 POST 数据被分析时。该模式在质量和性能之间有很好的平衡。

oThorough,当完整的 HTTP 请求信息头、请求 POST 数据和 HTTP 响应正文内容被分析时。该模式消耗的 CPU 资源最多,但是推荐用于需要特殊安全措施的网站。例如,接受卡支付的在线商店。

注意: 为了达到最优性能,web 应用程序防火墙需要本地的 DNS 服务器启用请求缓存功能。否则,当启用 web 应用程序防火墙时您的网站可能会运行很慢。

日志文件 (Linux)

 ModSecurity 使用两个地址来存储日志:

  • ModSecurity 审计日志(位于 /var/log/httpd/modsec_audit.log)非常详细,整个 Plesk 服务器使用该日志。当 ModSecurity 检测到任何发生的事件时,就会在审计日志文件中生成一个条目。若要查看 ModSecurity 审计日志,请进入 工具与设置 > Web 应用程序防火墙 (ModSecurity) > 点击 日志压缩文件  链接 (在 ModSecurity 审计日志 组里)。您可在此查看 ModSecurity 日志文件和修改日期,并下载日志文件。

  • 域名的 Apache 错误日志(位于 /var/www/vhosts/DOMAIN.TLD/logs/error_log)只包含有关网站错误的简要信息。您可以在客户面板上的 网站与域名 > <domain_name> > 日志 > 选择仅 Apache 错误 和 nginx 错误 而不是右边的 所有日志 以查看某个网站的错误日志。

日志文件 (Windows)

在 Windows 系统上,ModSecurity 审计日志是具体到域名级别的,位于 %plesk_dir%\ModSecurity\vhosts\<domain's GUID>\logs(其中 %plesk_dir% 是 Plesk 的默认安装目录)。

关闭规则

您将 web 应用程序防火墙模式从关闭或仅检测更改为启用时,网站会停止运行。在网站错误日志中,您可以找到此类错误代码,如 403、404 或 500,这些代码会在您将 web 应用程序防火墙模式更改回为仅检测或关闭时停止出现。在此情况下,请分析 ModSecurity 审计日志查找出现的问题。您可以关闭过于限制的安全规则或调整网站。

若要找出为何某个网站的 HTTP 请求无法完成的原因,请如下操作:

1.查看该网站的审计日志。

在 Plesk for Linux 中,您可以使用 Plesk 的 UI 查看日志:进入 工具与设置 > Web 应用程序防火墙 (ModSecurity) 点击 ModSecurity 日志文件 链接下载审计日志并在浏览器窗口中打开该日志。

2.使用搜索(在大部分浏览器中使用 Ctrl+F 快捷键)查找该网站(域名)引发问题的事件。例如,your_domain.tld。浏览器将会高亮如 HOST 的条目:your_domain.tld。在高亮条目上面的三行中,查找如 --eece5138-B—的字串。连字符中间的八个字符(例如我们示例中的eece5138)是) HTTP 请求触发的事件 ID。

3.进一步搜索其它项查找相同的事件 ID。找到事件 ID 后带有字母 H 的条目(例如我们的示例中的 eece5138-H--)。该条目包含检查 HTTP 请求时触发的安全规则的 ID 和描述。安全规则 ID 是引号中间的整数,以 3 开头,置于方括号中,带有前缀 ID。例如 [id "340003"]。

4.使用子字串 [id "3 在事件中找到安全规则 ID。当您关闭规则时,则可以使用该 ID。

若要关闭一个规则,请如下操作

1.进入 工具与设置 > Web 应用程序防火墙 (ModSecurity)。

2.在 关闭安全规则 部分,按 ID(例如 340003),按标签(例如 CVE-2011-4898)、或按常规表达方式(例如 XSS)选择安全规则并点击 确定

聚焦云计算,扫描二维码,关注HostUCan云计算

有好的文章希望站长之间帮助分享推广,猛戳这里我要投稿

您需要登录后才可以评论登录|注冊

暂无评论