文件完整性监控(FIM)
最后更新于:
文件完整性监控是一项功能,可帮助您监控Windows和Linux系统中文件及文件夹的所有变更(添加/删除/修改)。
- 建议仅对严格必要的文件和文件夹实施 FIM,以避免因生成大量日志而可能出现的磁盘空间问题。
- 在 Windows FIM 模块中,
- 若Windows文件服务器配置了FIM功能,则需同时 持有Windows Server许可和文件服务器许可。
- 若为Windows服务器配置FIM,仅需Windows Server许可。
- 若为Windows工作站配置FIM,则仅需Windows工作站许可。
Linux FIM 代理架构:
安装软件包请参阅此处的语法说明。
文件完整性监控的先决条件
Windows:
- 启用Windows文件完整性监控时,文件服务器将自动启用特定访问策略。若域中存在覆盖审计策略的组策略对象(GPO),请按以下步骤手动启用:
- 在管理员命令提示符中输入命令:auditpol/get/category:"Object Access"
- 然后继续启用以下访问策略
- 审核文件共享
- 审计文件系统
- 审核句柄操作
- 详细审计文件共享
- 审计其他对象访问事件。
- 应为受监控的文件/文件夹启用安全访问控制列表(SACL)。该功能由产品自动启用。若未启用,请使用以下权限手动更新SACL
- 执行文件/遍历文件夹
- 写入数据/创建文件
- 追加数据/创建文件夹
- 写入属性
- 写入扩展属性
- 删除子文件夹和文件
- 删除读取权限
- 更改权限
- 获取所有权
Linux:
- 以下软件包应安装在代理机上
- openssh-server [用于界面相关操作]
- auditd
- acl
- 确保
- SSH 端口(默认端口 22)可从服务器访问。
- ELA服务器端口(默认端口8095)可从代理机器访问。
- 同时请确保:
- Linux内核版本为2.6.25或更高
- Linux审计框架版本高于1.8
- 若以下规则处于启用状态,请从/etc/audit/audit.rules文件中移除并重启机器:
- 系统调用阻断规则"-a never,task",以及
- 不可变规则 "-e 2"。
- 若需为 SUSE 机器启用审计功能,请设置以下规则:
- 导航至/etc/sysconfig/auditd
- 设置 AUDITD_DISABLE_CONTEXTS = no
- 若存在安全增强型Linux(SELinux),则必须处于容许模式或禁用状态:
- 使用命令 getenforce 检查 SELinux 状态。
- 若状态为'强制',请导航至文件/etc/selinux/config并修改为:SELINUX = permissive。
- 重启机器。
验证端口可达性可使用以下命令:
echo > /dev/tcp/[服务器主机名/IP]/[服务器端口] && echo "端口可达"
示例:echo > /dev/tcp/ubuntu/8095 && echo "端口可访问"
(或)
telnet [服务器主机名/IP] [服务器端口]
示例:telnet ubuntu 8095
配置 Linux 文件完整性监控时,将对以下操作进行审计:
- 读取
- 写入
- 执行
- 属性变更
由于auditd需要root或sudo权限,若用户未具备相应权限,请遵循权限设置步骤。
安装FIM代理所需权限:
1. 将AgentManager添加至Sudoers文件:
为非超级用户启用AgentManager的sudo权限,请执行以下操作:
- 使用 root 用户配置权限。
- 请执行以下命令:
复制到剪贴板
visudo -f /etc/sudoers.d/<用户名>
- 在sudoers文件中添加以下内容:
复制到剪贴板
<username> ALL=NOPASSWD: /opt/ManageEngine/EventLogAnalyzer_Agent/bin/AgentManager *
示例:
- visudo -f /etc/sudoers.d/testuser
- testuser ALL=NOPASSWD: /opt/ManageEngine/EventLogAnalyzer_Agent/bin/AgentManager *
cat /etc/sudoers.d/<username>
示例:cat /etc/sudoers.
d/testuser预期输出:testuser ALL=NOPASSWD: /opt/ManageEngine/EventLogAnalyzer_Agent/bin/AgentManager *
将AgentManager添加至sudoers文件的原因:
以下操作需要 sudo 权限:
- 将代理目录和 elafim.conf 文件(位于 audit [或] audisp 目录下)的所有权转移给 root 用户。
- 重启auditd服务可能也需要root权限。
2. 创建目录并赋予权限
为防止非ManageEngine目录遭未授权访问,请以root用户身份为非sudo用户执行以下命令:
创建目录:
mkdir /opt/ManageEngine/
授予目录权限:
setfacl -m u:<username>:rwx /opt/ManageEngine/
CentOS/RHEL v8及更高版本/Ubuntu/openSUSE/Debian/Fedora:
setfacl -m u:<username>:wx /etc/audit/ /etc/audit/plugins.d/
CentOS/RHEL v6 至 v7.9 系统:
setfacl -m u:<username>:wx /etc/audisp/ /etc/audisp/plugins.d/
授予audit.rules文件权限:
setfacl -m u:<username>:r /etc/audit/audit.rules
示例:setfacl -m u:testuser:rwx /opt/ManageEngine/
配置文件完整性监控
要配置文件完整性监控,请转至
- 导航至设置>配置>管理文件完整性监控。
- 根据您要监控的文件和文件夹所在的设备,点击 Windows 或 Linux 选项卡。
- 点击添加FIM。
- 选择文件/文件夹所在的设备,输入正确的凭据,浏览并选择要监控的文件和文件夹。或者,您可以直接输入文件/文件夹的位置。
- 排除过滤器提供选项可排除
- 特定文件类型。
- 主位置内的特定子位置。
- 主位置内的所有子位置。
- 若需追踪文件或文件夹的修改者,请勾选"审核用户名"复选框 。
注意: Linux设备 默认启用用户名审核功能。
- 点击 “配置”。
批量文件完整性监控配置
若需将多个设备中相同的文件和文件夹添加至监控范围,可使用批量文件完整性监控功能。
- 导航至“设置”>“配置”>“管理文件完整性监控”。
- 根据您要监控的文件和文件夹所在的设备类型,点击Windows或 Linux选项卡 。
- 点击添加FIM。在右上角选择配置多个设备。
- 选择文件/文件夹所在的设备,输入正确凭据,并选择文件模板。
- 点击配置。
- 若需监控的设备已安装代理程序,文件监控功能将自动在该代理程序中启用。
- 若目标设备未安装代理程序,系统将自动安装代理程序并启用文件监控功能。
- 请注意,文件夹中每次变更产生的日志量可能影响文件服务器性能。建议仅对必需的文件/文件夹启用监控。
管理文件完整性监控(FIM)模板
若需在多个设备中监控相同文件或文件夹,可创建模板并分配至这些设备。创建 FIM 模板请按以下步骤操作:
- 导航至“设置”>“配置”>“管理文件完整性监控”>“FIM模板”。
- 根据您要监控的文件和文件夹所在的设备,点击 Windows 或 Linux 选项卡。
- 点击添加FIM。
- 输入模板名称并选择文件和文件夹的位置。
- 排除过滤器提供排除选项
- 特定文件类型。
- 主位置内的特定子位置。
- 主位置内的所有子位置。
- 若需追踪文件/文件夹的修改者身份,请勾选"审核用户名"复选框。
- 点击配置。
您也可以直接输入文件/文件夹的位置。
所有创建的模板均以表格形式列出,并提供编辑/删除选项。