centos

CentOS如何配置HDFS安全

小樊
34
2025-08-13 00:15:20
栏目: 智能运维

在CentOS上配置HDFS安全可从系统基础安全、Kerberos认证、权限管理、加密等方面入手,具体步骤如下:

一、系统基础安全配置

  1. 强化用户管理
    • 锁定非必要超级用户:passwd -l 用户名
    • 删除默认冗余账户(如admlp):userdel 用户名
    • 设置复杂密码(长度>10位,含大小写字母、数字、特殊字符)并修改/etc/login.defs限制密码规则。
  2. 保护系统文件
    • chattr +i锁定/etc/passwd/etc/shadow等关键文件。
    • 限制su命令使用:编辑/etc/pam.d/su,仅允许特定组(如wheel)使用。

二、Kerberos身份认证

  1. 安装与配置Kerberos
    • 安装服务端和客户端:yum install krb5-server krb5-workstation
    • 编辑/etc/krb5.conf,配置领域(REALM)和KDC服务器信息。
    • 启动服务:systemctl start krb5kdc && systemctl start kadmind
  2. 创建HDFS服务主体与密钥表
    • 在KDC服务器上执行:
      kadmin.local -q "addprinc -randkey hdfs/_HOST@YOUR.REALM.COM"
      kadmin.local -q "ktadd -k /etc/security/keytabs/hdfs.keytab hdfs/_HOST@YOUR.REALM.COM"
  3. 配置HDFS使用Kerberos
    • 修改core-site.xml
      <property>  
        <name>hadoop.security.authentication</name>  
        <value>kerberos</value>  
      </property>  
      ```。  
      
    • 修改hdfs-site.xml,指定NameNode和DataNode的主体及密钥文件路径。
  4. 验证认证
    • 使用kinit获取票据:kinit 用户名@REALM.COM
    • 通过klist查看票据有效性。

三、HDFS权限与加密配置

  1. 权限控制
    • 启用权限检查:hdfs dfsadmin -safemode enter(安全模式下配置)。
    • 设置目录权限:hdfs dfs -chmod 755 /pathhdfs dfs -chown 用户:组 /path
    • 启用ACL(访问控制列表):在hdfs-site.xml中设置dfs.namenode.acls.enabled=true,并通过hdfs dfs -setfacl添加规则。
  2. 数据加密
    • 传输加密:在hdfs-site.xml中设置dfs.encrypt.data.transfer=true
    • 存储加密:使用HDFS透明加密(需配置加密区域和密钥)。

四、集群安全增强

  1. 防火墙与节点通信
    • 限制HDFS端口(如NameNode默认8020、DataNode默认50010)的防火墙规则。
    • 确保节点间SSH无密码登录(使用ssh-keygenauthorized_keys)。
  2. 监控与审计
    • 启用HDFS审计日志(通过hdfs-site.xml配置dfs.audit.logger)。
    • 定期备份HDFS数据到异地,并验证恢复流程。

五、其他安全措施

参考来源

0
看了该问题的人还看了