HBase在CentOS上如何安全设置
小樊
37
2026-01-02 11:04:37
CentOS 上 HBase 安全设置实操指南
一 身份鉴别与 Kerberos 集成
- 在所有节点安装 Kerberos 客户端:sudo yum install -y krb5-workstation;如使用内置 KDC,安装 krb5-server krb5-utils。配置 /etc/krb5.conf 的 [libdefaults]、[realms]、[domain_realm],确保 default_realm、KDC 与 admin_server 正确。创建 HBase 服务主体:kadmin.local addprinc -randkey hbase/_HOST@YOUR-REALM.COM;导出密钥表:kadmin.local xst -k /etc/security/keytabs/hbase.service.keytab hbase/_HOST@YOUR-REALM.COM,设置权限仅 root 可读:chown hbase:hbase /etc/security/keytabs/hbase.service.keytab && chmod 400。将同一套 keytab 分发到所有 Master/RegionServer 对应路径。HBase 侧关键配置(hbase-site.xml):hbase.security.authentication=kerberos;hbase.security.authorization=true;hbase.master.kerberos.principal=hbase/_HOST@YOUR-REALM.COM;hbase.regionserver.kerberos.principal=hbase/_HOST@YOUR-REALM.COM;hbase.master.keytab.file=/etc/security/keytabs/hbase.service.keytab;hbase.regionserver.keytab.file=/etc/security/keytabs/hbase.service.keytab。完成后用 kinit -k -t /etc/security/keytabs/hbase.service.keytab hbase/$(hostname -f)@YOUR-REALM.COM 验证票据获取,再重启 HBase 服务。
二 授权与访问控制
- 启用 HBase ACL 与 AccessController:hbase.security.authorization=true;hbase.coprocessor.region.classes=org.apache.hadoop.hbase.security.access.AccessController;hbase.coprocessor.master.classes=org.apache.hadoop.hbase.security.access.AccessController。通过 HBase Shell 进行授权:create ‘users’,‘info’;grant ‘user1’,‘RW’,‘users’;grant ‘user2’,‘R’,‘users:info’;revoke ‘user1’,‘RW’,‘users’;user_permission ‘users’ 查看。权限粒度覆盖表/列族/列,常用权限为 R/W/RWXCA,生产建议遵循最小权限原则并定期审计。
三 网络安全与端口最小化
- 启用 firewalld 并仅放行必要端口,遵循“最小暴露面”原则。常见端口与用途:HBase Master 16000/16010(RPC/Web UI)、RegionServer 16020/16030(RPC/Web UI)、Zookeeper 2181、HDFS 8020/9000(如 HBase 使用 HDFS)。示例:firewall-cmd --permanent --zone=public --add-port={16000,16010,16020,16030,2181,8020}/tcp && firewall-cmd --reload。云环境同步配置安全组入站规则,仅允许管理网/应用网段访问上述端口。
四 审计与合规
- 开启 HBase 审计日志以记录敏感操作:hbase.security.audit.log.enabled=true;hbase.security.audit.log.file=/var/log/hbase/audit.log,并确保运行用户对审计日志目录具备写权限(如:chown hbase:hbase /var/log/hbase && chmod 700 /var/log/hbase)。审计日志应与集中日志系统对接,保留周期与合规要求保持一致,便于事后追溯与合规审计。
五 系统加固与运行态安全
- 操作系统与进程隔离:以专用系统用户(如 hbase)运行 HBase,禁止 root 直接启动;目录与文件权限最小化(配置、数据、日志目录仅属主可读写执行);密钥表 400 权限并限制可读取组。JVM 与 GC 日志落盘并受权限保护;开启 HBase Web UI 认证/反向代理(如 Knox 或企业 SSO)避免匿名访问。与 HDFS 交互时确保 HDFS 已启用 Kerberos,并统一启用 HDFS ACL/Sentry 等机制,避免权限断层。变更前在测试环境验证,滚动升级,保留回滚方案。