本文详细介绍Hadoop安全审计与合规实战,包括HDFS审计、YARN审计、Ranger审计、审计日志分析、合规检查等内容,适合大数据运维工程师使用。学习交流加群风哥微信: itpux-com
Part01-基础概念与理论知识
1.1 安全审计概述
安全审计是指记录、分析用户操作和系统事件,确保合规和安全。更多视频教程www.fgedu.net.cn
- 记录操作行为
- 追溯安全事件
- 满足合规要求
- 发现异常行为
1.2 合规要求
合规要求:
1. 等级保护
– 等保2.0
– 安全审计要求
– 日志保留要求
2. 行业规范
– 金融行业
– 医疗行业
– 政府行业
3. 数据安全
– 数据安全法
– 个人信息保护法
– 审计要求
1.3 审计类型
审计类型:
Part02-生产环境规划与建议
2.1 审计规划
审计规划:
1. 审计范围
– HDFS操作
– YARN任务
– Hive查询
– HBase操作
2. 审计内容
– 用户
– 时间
– 操作
– 资源
– 结果
3. 审计存储
– 本地存储
– 集中存储
– 长期存储
2.2 审计策略
审计策略:
- 记录所有操作:完整记录
- 记录敏感操作:重点记录
- 记录失败操作:失败记录
from bigdata视频:www.itpux.com
2.3 日志保留
日志保留:
1. 在线保留
– 保留30天
– 快速查询
2. 归档保留
– 保留6个月
– 压缩存储
3. 长期保留
– 保留1年以上
– 合规审计
Part03-生产环境项目实施方案
3.1 HDFS审计
3.1.1 HDFS审计配置
# hadoop-env.sh
export HDFS_AUDIT_LOGGER=INFO,RFAAUDIT
# log4j.properties
log4j.logger.org.apache.hadoop.hdfs.server.namenode.FSNamesystem.audit=INFO,RFAAUDIT
log4j.additivity.org.apache.hadoop.hdfs.server.namenode.FSNamesystem.audit=false
log4j.appender.RFAAUDIT=org.apache.log4j.RollingFileAppender
log4j.appender.RFAAUDIT.File=/bigdata/logs/hdfs/audit.log
log4j.appender.RFAAUDIT.MaxFileSize=100MB
log4j.appender.RFAAUDIT.MaxBackupIndex=30
log4j.appender.RFAAUDIT.layout=org.apache.log4j.PatternLayout
log4j.appender.RFAAUDIT.layout.ConversionPattern=%d{ISO8601} %p %c: %m%n
# 查看审计日志
tail -f /bigdata/logs/hdfs/audit.log
# 输出示例:
# 2024-04-08 10:00:00,000 INFO FSNamesystem.audit: allowed=true ugi=fgedu@FGEDU.NET.CN ip=/192.168.1.100 cmd=listStatus src=/user/fgedu dst=null perm=null
3.2 YARN审计
3.2.1 YARN审计配置
# log4j.properties
log4j.logger.org.apache.hadoop.yarn.server.resourcemanager.RMAuditLogger=INFO,RMAUDIT
log4j.appender.RMAUDIT=org.apache.log4j.RollingFileAppender
log4j.appender.RMAUDIT.File=/bigdata/logs/yarn/audit.log
log4j.appender.RMAUDIT.MaxFileSize=100MB
log4j.appender.RMAUDIT.MaxBackupIndex=30
log4j.appender.RMAUDIT.layout=org.apache.log4j.PatternLayout
log4j.appender.RMAUDIT.layout.ConversionPattern=%d{ISO8601} %p %c: %m%n
# 查看审计日志
tail -f /bigdata/logs/yarn/audit.log
3.3 Ranger审计
3.3.1 Ranger审计
# Ranger Admin UI -> Audit
# 可以查看审计日志
# 包括:
– 访问时间
– 用户
– 资源
– 操作
– 结果
– 策略
# 审计存储
– 存储到Solr
– 存储到HDFS
– 存储到数据库
# 审计查询
– 按时间查询
– 按用户查询
– 按资源查询
– 按结果查询
Part04-生产案例与实战讲解
4.1 审计日志分析
4.1.1 审计日志分析
# 1. 统计操作次数
grep “allowed=true” /bigdata/logs/hdfs/audit.log | wc -l
grep “allowed=false” /bigdata/logs/hdfs/audit.log | wc -l
# 2. 统计用户操作
grep “ugi=fgedu” /bigdata/logs/hdfs/audit.log | wc -l
# 3. 统计敏感操作
grep “cmd=delete” /bigdata/logs/hdfs/audit.log | wc -l
grep “cmd=rename” /bigdata/logs/hdfs/audit.log | wc -l
# 4. 查看失败操作
grep “allowed=false” /bigdata/logs/hdfs/audit.log | tail -10
# 5. ELK分析
# 导入到Elasticsearch
# Kibana可视化
# 仪表盘展示
4.2 审计报告
4.2.1 审计报告
# 1. 日报
– 总操作次数
– 成功次数
– 失败次数
– 异常情况
# 2. 周报
– 趋势分析
– 用户行为分析
– 异常告警
– 改进建议
# 3. 月报
– 合规性检查
– 安全事件
– 审计发现
– 整改建议
4.3 合规检查
4.3.1 合规检查
# 1. 审计配置检查
– 审计是否启用
– 审计日志完整
– 日志权限正确
# 2. 日志保留检查
– 保留时间达标
– 日志可查询
– 日志安全
# 3. 访问控制检查
– 权限配置正确
– 最小权限原则
– 权限审计完整
# 4. 安全事件检查
– 异常访问
– 失败操作
– 数据泄露
Part05-风哥经验总结与分享
5.1 最佳实践
最佳实践:
- 审计完整:完整记录所有操作
- 日志安全:审计日志防篡改
- 定期分析:定期分析审计日志
- 及时告警:异常行为及时告警
- 合规达标:满足合规要求
5.2 常见坑点
1. 审计未启用
– 现象:出事无据可查
– 原因:没配置审计
– 避坑:启用审计
2. 日志被删除
– 现象:审计日志丢失
– 原因:日志权限不严
– 避坑:保护审计日志
3. 不分析日志
– 现象:问题没发现
– 原因:不看审计日志
– 避坑:定期分析
4. 保留时间不够
– 现象:审计需要时已删除
– 原因:保留时间短
– 避坑:按要求保留
5.3 检查清单
## 配置检查
– [ ] HDFS审计启用
– [ ] YARN审计启用
– [ ] Ranger审计启用
– [ ] 审计日志权限正确
– [ ] 日志轮转配置
## 功能检查
– [ ] 审计日志正常记录
– [ ] 审计日志安全存储
– [ ] 定期审计分析
– [ ] 审计报告生成
– [ ] 问题及时整改
本文由风哥教程整理发布,仅用于学习测试使用,转载注明出处:http://www.fgedu.net.cn/10327.html
