ubuntu overlay如何实现安全审计
导读:Ubuntu Overlay 安全审计实践 一 审计目标与总体思路 覆盖对象:OverlayFS 的挂载与卸载、可写层目录(upperdir)的敏感变更、容器/进程对挂载点的访问、内核与容器运行时的安全事件。 核心机制:启用并配置 aud...
Ubuntu Overlay 安全审计实践
一 审计目标与总体思路
- 覆盖对象:OverlayFS 的挂载与卸载、可写层目录(upperdir)的敏感变更、容器/进程对挂载点的访问、内核与容器运行时的安全事件。
- 核心机制:启用并配置 auditd 记录关键系统调用与文件访问;结合 AppArmor/SELinux 做强制访问控制;对容器场景补充 Docker/Kubernetes 的日志与网络策略审计;建立持续监控与告警闭环。
二 启用内核审计 auditd 并聚焦 OverlayFS
- 安装与启动
- 安装组件:
sudo apt update & & sudo apt install -y auditd audispd-plugins linux-audit - 启动与开机自启:
sudo systemctl start auditd & & sudo systemctl enable auditd
- 安装组件:
- 关键审计规则(写入 /etc/audit/rules.d/audit.rules 或 /etc/audit/rules.d/overlay.rules)
- 监控 OverlayFS 挂载/卸载
-a always,exit -F arch=b64 -S mount -S umount -S umount2 -F auid> =1000 -F auid!=4294967295 -k overlayfs_mount-a always,exit -F arch=b32 -S mount -S umount -S umount2 -F auid> =1000 -F auid!=4294967295 -k overlayfs_mount
- 监控 upperdir 的可写访问(将 /var/lib/docker/overlay2 替换为你的实际 upperdir 根)
-w /var/lib/docker/overlay2 -p wa -k overlayfs_upperdir
- 容器特权与能力变更(可选,发现异常提权)
-a always,exit -S capset -S prctl -k overlayfs_priv
- 监控 OverlayFS 挂载/卸载
- 使规则生效
- 重载:
sudo augenrules --load或sudo auditctl -R /etc/audit/rules.d/overlay.rules - 验证:
sudo auditctl -l
- 重载:
- 日志检索与解读
- 查看挂载审计:
sudo ausearch -k overlayfs_mount -i - 查看 upperdir 变更:
sudo ausearch -k overlayfs_upperdir -i - 查看 SELinux AVC(如启用 SELinux):
sudo ausearch -m avc -ts recent -i
- 查看挂载审计:
- 日志轮转与容量
- 编辑
/etc/audit/auditd.conf调整max_log_file、num_logs、space_left等,防止审计日志被占满导致审计中断。
- 编辑
三 容器与运行时的审计增强
- Docker 场景
- 记录容器生命周期与敏感操作:
sudo docker events --since '2025-01-01T00:00:00' --filter 'event=die' --filter 'event=start' > > /var/log/docker-events.log 2> & 1 - 结合审计规则监控 Docker 数据目录(常见为 /var/lib/docker):
-w /var/lib/docker -p wa -k docker_data - 日志集中与轮转:为
/var/log/docker*.log配置 logrotate,避免磁盘被占满。
- 记录容器生命周期与敏感操作:
- Kubernetes 场景
- 审计策略:启用 Kube-apiserver 审计日志,记录对 Pod/NetworkPolicy/Secret 的增删改查与鉴权结果。
- 准入控制:启用 PodSecurity 或 OPA/Gatekeeper,对使用特权容器、挂载敏感目录、hostPath 等进行拦截与审计留痕。
- 网络策略审计:使用 Calico NetworkPolicy/GlobalNetworkPolicy 的“默认拒绝 + 最小放行”模型,并定期导出策略清单进行版本化审计:
kubectl get networkpolicy -A -o yaml。
四 强制访问控制与系统加固
- AppArmor
- 检查状态:
sudo aa-status - 为使用 OverlayFS 的服务(如 dockerd、容器运行时)加载或编写定制 AppArmor 配置,限制对 upperdir、/proc、/sys 等敏感路径的访问。
- 检查状态:
- SELinux(可选)
- 安装工具:
sudo apt install -y selinux-utils - 启用并配置策略,结合
ausearch -m avc分析拒绝事件,持续收紧策略。
- 安装工具:
- 最小权限与挂载安全
- 限制 OverlayFS 挂载权限,仅允许 root 或受控管理员执行挂载。
- 加固 upperdir:设置严格属主与权限(如
chown root:root /path/to/upperdir; chmod 750 /path/to/upperdir),按应用/租户隔离 upperdir,降低“击穿”影响面。 - 系统加固:保持内核与软件包更新,修复如 CVE-2023-2640、CVE-2023-32629 等相关漏洞;禁用不必要的服务与端口。
五 监控告警与合规输出
- 实时检索与告警
- 将
ausearch -k overlayfs_mount -i、ausearch -k overlayfs_upperdir -i的结果接入 rsyslog/ELK 或 SIEM,对异常挂载、upperdir 被非授权修改等触发告警。
- 将
- 主机与边界防火墙审计
- 使用 UFW/nftables 对管理口与 Overlay 网段 实施最小放行,并记录命中计数;在云环境同步审计 安全组/NACL 变更与放行清单。
- 合规与报告
- 定期导出并归档:auditd 日志、docker events、K8s 审计日志、NetworkPolicy 清单与变更记录;对关键资产(upperdir、挂载点、密钥目录)建立基线并做差异比对。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: ubuntu overlay如何实现安全审计
本文地址: https://pptw.com/jishu/770290.html
