首页 > 其他分享 >modsecurity: 配置文件中的配置项之一

modsecurity: 配置文件中的配置项之一

时间:2024-10-18 13:51:14浏览次数:7  
标签:审计 log 配置文件 记录 配置 modsecurity ModSecurity 响应 日志

一,是否启用防火墙

SecRuleEngine是接受来自ModSecurity-CRS目录下的所有规则的安全规则引擎。因此,我们可以根据需求设置不同的规则。

#SecRuleEngine On:将在服务器上激活ModSecurity防火墙。它会检测并阻止该服务器上的任何恶意攻击。
#SecRuleEngine Detection Only:如果这个规则是在whitelist.conf文件中设置的,它只会检测到所有的攻击,并根据攻击产生错误,但它不会在服务器上阻止任何东西。
#SecRuleEngine Off::这将在服务器上上停用ModSecurity的防火墙。

默认值:

SecRuleEngine DetectionOnly

 

二,审计日志配置:

1,#配置审计日志引擎的开启与否

SecAuditEngine RelevantOnly

取值:
On - 默认情况下记录所有事务的日志;
RelevantOnly - 默认只记录事务中由warning或error触发的日志,
                     或者记录一些特意考虑过的状态码
relevant这个单词是有关的/有意义的

2,#记录由规则标记的事务,以及触发服务器错误
将记录所有 5xx 和 4xx 级别的状态代码,404 除外

SecAuditLogRelevantStatus "^(?:5|4(?!04))"

备注:必须将SecAuditEngine 设置为RelevantOnly,这个参数才有意义,
它是一个正则表达式。
#这个指令最主要的目的是允许你配置审计产生特殊HTTP 响应状态码的唯一事务,
这个指令通常用于减少审计日志文件的总体大小。
需要注意的是:  如果使用了这个参数,那么返回状态码是200 的成功攻击事件不会记录。

3,#定义每个事务中记录到审计日志中的部分。

SecAuditLogParts ABIJDEFHZ

可用的审计日志部分:

A:审计日志头(必须配置)
B:请求头
C:请求体(仅在请求体存在并且ModSecurity配置为拦截它时才存在。 这需要将SecRequestBodyAccess设置为On)
D:该值是为中间响应头保留,尚未有任何实际作用
E:中间响应体
   (仅当ModSecurity配置为拦截响应体并且审计日志引擎配置为记录时才存在。 拦截响应体需要将SecResponseBodyAccess设置为On)。
     除非ModSecurity拦截中间响应体,否则中间响应体与实际响应体相同,
     在这种情况下,实际响应体将包含错误消息(Apache默认错误消息或ErrorDocument页面))
F:最终响应头(不包括日期和服务器标题,Apache始终在内容交付的后期阶段添加)
G:该值是为实际响应体保留,尚未有任何实际作用
H:审计日志追踪内容;
I:该部分是C的替代品。除了使用multipart/form-data编码,否则它在所有情况下记录的数据与C相同。
    在这种情况下,它将记录一个假应用程序/ x-www-form-urlencoded正文,其中包含有关参数的信息,但不包含有关文件的信息。
    如果您不想在审核日志中存储(通常很大)的文件,使用I比使用C更方便。
J:该部分包含有关使用multipart/form-data编码上传的文件的信息。
K:该部分包含了本次访问中所匹配到的所有规则(按每行一个进行记录)。
    规则是完全合格的,因此将显示继承的操作和默认操作符。V2.5.0以上支持。
Z:结尾分界线,表示本次日志记录完毕(必须配置)

默认值:ABIJDEFHZ

4,#配置使用审计日志记录机制的类型Serial|Concurrent,Serial

SecAuditLogType Serial

Serial - 所有的审计日志条目都被存储在主审计日志记录文件中,使用时很方便,
           但是它很慢,因为任何时候只有一个文件被打开也只能写入一条审计日志条目。
Concurrent - 审计日志条目被存储于不同的文件中,每个事务一个,
                  如果你要把审计日志数据发送到远程ModSecurity控制主机上就使用Concurrent日志模式。

默认值:   Serial

5,#审计日志路径

SecAuditLog /var/log/modsec_audit.log

 默认值: /var/log/modsec_audit.log

6,审计日志相关的全部默认值:

# -- Audit log configuration -------------------------------------------------

# Log the transactions that are marked by a rule, as well as those that
# trigger a server error (determined by a 5xx or 4xx, excluding 404,
# level response status codes).
#
SecAuditEngine RelevantOnly
SecAuditLogRelevantStatus "^(?:5|4(?!04))"

# Log everything we know about a transaction.
SecAuditLogParts ABIJDEFHZ

# Use a single file for logging. This is much easier to look at, but
# assumes that you will use the audit log only ocassionally.
#
SecAuditLogType Serial
SecAuditLog /var/log/modsec_audit.log

# Specify the path for concurrent audit logging.
#SecAuditLogStorageDir /opt/modsecurity/var/audit/

 

标签:审计,log,配置文件,记录,配置,modsecurity,ModSecurity,响应,日志
From: https://www.cnblogs.com/architectforest/p/18473952

相关文章

  • Unity Apple Vision Pro 保姆级开发教程-环境配置、导入 PolySpatial 案例、程序发布
    视频教程Unity环境配置、导入PolySpatial案例、程序发布到设备教程说明这期教程我将介绍使用Unity开发AppleVisionPro应用所需要的Unity环境配置,以及如何导入PolySpatial样例场景、将Unity程序打包到头显中运行。开发前期准备(软硬件要求,开启visionpro......
  • Linux配置静态IP
    在日常实验中我们需要使用ssh工具来远程我们的linux系统,因此就需要配置系统的静态IP。linux系统一切皆文件,配置静态ip也就是在配置网络ip地址的文件内修改。linux系统的网络配置文件是放在/etc/sysconfig/network-netwrok内(CentOS6的网络配置文件是ifcfg-eth0,CentOS7的网络配置文......
  • idea修改maven配置
    <?xmlversion="1.0"encoding="UTF-8"?><!--LicensedtotheApacheSoftwareFoundation(ASF)underoneormorecontributorlicenseagreements.SeetheNOTICEfiledistributedwiththisworkforadditionalinformationregardi......
  • 配置式表单渲染器的实现
    配置式表单渲染器的实现 我们是袋鼠云数栈UED团队,致力于打造优秀的一站式数据中台产品。我们始终保持工匠精神,探索前端道路,为社区积累并传播经验价值。。本文作者:奇铭(掘金)需求背景前段时间,离线计算产品接到改造数据同步表单的需求。一方面,数据同步模块的代码可读......
  • .netcore console 日志和配置
    前言做开发一般会写一些console程序进行调试或者小范围的处理,这里记录下console加日志和配置的过程日志日志这里选择serilog,serilog提供sink,控制台这里我们安装sink.Console和Sinke.File。一共三个nuget包SerilogSerilog.Sinks.ConsoleSerilog.Sinks.File然后代码中配......
  • k8s-Longhorn系统配置 20241017 -分布式存储
    目录一Longhorn存储部署1.1Longhorn概述1.2Longhorn部署1.5动态sc创建1.6测试PV及PVC1.7Ingress暴露Longhorn1.8确认验证附加Helm部署附0.1helm安装附0.2helm安装 回到顶部一Longhorn存储部署1.1Longhorn概述Longhorn是用于Kubernetes的......
  • MySQL数据库在Windows环境的配置
      本文介绍在Windows电脑中,下载、部署MySQL数据库的方法。  MySQL数据库可以说是最为常用的数据库之一了,在GIS领域中其也经常被用到。之前我们介绍过Redis、PostgreSQL、InfluxDB等多种数据库在Windows电脑中的下载、安装与运行方法,这里就再介绍一下MySQL数据库的配置......
  • neovim 配置
    installcurl-LOhttps://github.com/neovim/neovim/releases/latest/download/nvim-linux64.tar.gz#或直接到releases中下载,linux系统要注意glibc版本sudorm-rf/opt/nvimsudotar-C/opt-xzfnvim-linux64.tar.gzexportPATH="\(PATH:/opt/nvim-linux64/bin"#......
  • k8s-NFS系统配置 20241017
    1、NFS服务端安装-master节点192.168.177.133#安装nfs服务端yuminstallnfs-utils-y#创建共享目录mkdir/nfs#配置nfs共享vim/etc/exports#添加以下一行/nfs*(rw,sync,no_root_squash)#指明共享目录和权限设置 #启动nfs服务,并设置开机启动systemctlstartnfs-ser......
  • k8s多master节点配置高可用
    你们集群的master是单master还是多master多master是如何建立高可用的?负载均衡器(LoadBalancer):通过使用负载均衡器,如Nginx或HAProxy,可以实现对kube-apiserver的负载均衡和反向代理。这确保了客户端请求可以均匀地分配到多个Master节点上。Keepalived:使用Keepalived软件......