温馨提示×

CentOS系统中Zookeeper的安全设置

小樊
48
2025-08-31 02:17:05
栏目: 智能运维

CentOS系统中Zookeeper的安全设置如下:

  1. 配置文件权限
    确保zoo.cfg等配置文件所有者为Zookeeper用户,权限设为644:

    sudo chown -R zookeeper:zookeeper /path/to/zoo.cfg  
    sudo chmod 644 /path/to/zoo.cfg  
    
  2. 数据与日志目录权限
    设置数据目录(dataDir)和日志目录权限为750,仅允许Zookeeper用户读写:

    sudo chown -R zookeeper:zookeeper /path/to/dataDir /path/to/logDir  
    sudo chmod -R 750 /path/to/dataDir /path/to/logDir  
    
  3. SELinux设置
    临时关闭SELinux测试或永久禁用(修改/etc/selinux/config):

    sudo setenforce 0  # 临时关闭  
    # 或编辑配置文件永久禁用  
    
  4. ACL访问控制

    • 使用zkCli.sh添加用户并设置ACL权限(如SASL认证):
      zkCli.sh adduser user1  
      zkCli.sh setAcl /path/to/node world:anyone:r user1:user1:rwcda  
      
    • 客户端连接时需提供认证信息(如SASL):
      zk.addAuthInfo("digest", "user1:password".getBytes());  
      
  5. 防火墙配置
    限制Zookeeper端口(默认2181)仅允许受信任IP访问:

    sudo firewall-cmd --permanent --zone=public --add-port=2181/tcp  
    sudo firewall-cmd --reload  
    
  6. 加密通信(SSL/TLS)

    • 生成证书并配置zoo.cfg启用SSL:
      openssl req -newkey rsa:2048 -x509 -days 3650 -keyout zookeeper.key -out zookeeper.crt  
      # 在zoo.cfg中添加:  
      ssl.keystore.location=/path/to/zookeeper.jks  
      ssl.keystore.password=yourpassword  
      ssl.clientAuth=need  
      
  7. 安全审计与监控
    启用审计日志记录节点访问操作,结合监控工具(如Prometheus)实时监控集群状态。

注意:生产环境中需结合业务需求选择认证方式(如Kerberos/SASL),并定期更新Zookeeper版本以修复安全漏洞。

0