首页主机资讯Hadoop在Linux上如何进行安全审计

Hadoop在Linux上如何进行安全审计

时间2025-12-22 21:28:05发布访客分类主机资讯浏览812
导读:Hadoop 在 Linux 上的安全审计实践 一 审计范围与总体架构 覆盖组件与日志源: HDFS:NameNode 审计日志(访问/授权事件)、DataNode 访问日志、HDFS 审计到 Linux syslog。 YARN/Ma...

Hadoop 在 Linux 上的安全审计实践

一 审计范围与总体架构

  • 覆盖组件与日志源:
    • HDFS:NameNode 审计日志(访问/授权事件)、DataNode 访问日志、HDFS 审计到 Linux syslog
    • YARN/MapReduce:ResourceManager/JobHistoryServer 作业与队列事件日志。
    • Linux 系统层:SSH 登录/提权、sudo 命令、PAM 会话、关键系统服务日志。
    • 网络层:与 TLS/SSL 相关的握手与证书事件(由系统/代理日志承载)。
  • 目标与原则:
    • 身份可追溯(强认证)、操作可归因(唯一主体)、行为可还原(时间线完整)、日志防篡改(集中化与只读存储)。

二 启用并加固 Hadoop 审计日志

  • 启用 HDFS 审计(NameNode)
    • 开启审计与 ACL 检查:
      • core-site.xml
        • hadoop.security.authorization=true
        • hadoop.security.authentication=kerberos
      • hdfs-site.xml
        • dfs.permissions.enabled=true
        • dfs.namenode.acls.enabled=true
    • 审计输出与滚动(建议写入 Linux 系统日志,便于集中化):
      • hdfs-site.xml
        • dfs.namenode.audit.log.async=true(异步写,降低 NameNode 抖动)
        • dfs.namenode.audit.log.token.tracking.id=true(便于追踪代理/委托场景)
        • 审计日志路径示例:/var/log/hadoop-hdfs/audit.log
        • 滚动策略示例:dfs.namenode.audit.log.maxsize=10485760(10 MB)、dfs.namenode.audit.log.rotation.period=86400(1 天)
    • 分发与重启:将配置同步到所有节点,按序重启 NameNode(滚动重启避免业务中断)。
  • 启用 YARN 审计
    • yarn-site.xml 开启作业事件审计(如 JobHistoryServer 的访问与作业生命周期事件),并配置日志目录与滚动策略,统一接入 syslog/集中日志平台。
  • 代理与委托场景的审计增强
    • 若使用 Hadoop 代理用户(proxyuser),务必为代理主体配置最小权限与可审计范围,并在审计日志中结合 token.tracking.id 追踪委托链路,避免“越权不可归因”。

三 系统层与网络层审计

  • Linux 系统审计(auditd)
    • 记录关键主体与关键操作:
      • 审计 SSH 登录与 sudo 提权:
        • 示例:sudo auditctl -a always,exit -F arch=b64 -S execve -k hdfs_sudo
        • 示例:sudo auditctl -a always,exit -F path=/usr/sbin/sshd -k sshd_access
      • 持久化规则到 /etc/audit/rules.d/hadoop.rules,并启用 auditd 服务。
    • 审计日志集中:将 /var/log/audit/audit.log/var/log/hadoop-*.log 统一采集到 rsyslog/ELK/OpenSearch 等平台。
  • 网络与加密审计
    • 启用 TLS/SSL 加密(Hadoop SSL/TLS 或反向代理/负载均衡层 TLS),并在系统/代理日志中记录握手失败、证书过期与域名不匹配等异常,配合 IDS/态势感知进行告警。

四 日志集中、保护与留存

  • 集中化采集与结构化
    • 使用 rsyslog/Filebeat/LogstashNameNode 审计日志、DataNode 日志、YARN 日志、auditd 日志统一发送到 ELK/OpenSearchSplunk,并添加统一字段:cluster、host、service、user、src_ip、timestamp
  • 防篡改与访问控制
    • 审计日志目录与文件设置为 root:hadoop、0750/0640,并通过 chattr +aWORM(Write Once Read Many) 存储策略防止篡改;集中日志平台启用 只读/只追加 与分权访问。
  • 留存与合规
    • 依据等保/行业规范设置留存周期(如 ≥180 天),对关键审计日志建立 离线归档取证镜像

五 审计分析与合规核查

  • 常用审计查询范式
    • 未授权访问尝试:筛选 access denied、异常 src_ip、失败次数在短时间内激增的账户。
    • 超级用户/代理异常:对 proxyuser 的非常规目标路径、非常规时间段的访问进行基线比对与告警。
    • 权限变更:对 chmod/chown/setfacl 与 HDFS 策略变更进行前后对比,关联工单/变更单。
    • 提权与横向移动:审计 sudo 执行链、SSH 登录来源与失败重试,结合资产拓扑识别异常跳板。
  • 自动化与可视化
    • Kibana/Grafana 建立审计看板:按 用户/队列/目录/时间 维度统计访问量、失败率、Top 异常来源;对关键事件配置 实时告警(如 5 分钟内同一主体 10 次以上 403/500 错误)。
  • 例行核查清单
    • 每日:检查 NameNode 审计日志 是否正常滚动、是否存在异常 403/500;核验 auditd 规则命中与错误日志。
    • 每周:复核 HDFS ACLRanger/Sentry 策略变更记录,抽样比对审计日志与变更单一致性。
    • 每月:开展 渗透/红队演练取证演练,验证审计链路完整性与告警有效性;评估 TLS 证书有效期与加密套件合规性。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Hadoop在Linux上如何进行安全审计
本文地址: https://pptw.com/jishu/777795.html
Linux平台上Hadoop如何进行网络调优 Hadoop数据如何在Linux上存储

游客 回复需填写必要信息