以下是在Ubuntu上解決Zookeeper安全設置問題的關鍵步驟:
配置防火墻
使用ufw
限制Zookeeper端口(默認2181)訪問,僅允許可信IP連接:
sudo ufw enable
sudo ufw allow from <可信IP> to any port 2181
sudo ufw deny 2181 # 拒絕其他IP訪問
sudo ufw status # 檢查規則
啟用ACL權限控制
/etc/zookeeper/conf/zoo.cfg
,啟用SASL認證:authProvider.1=org.apache.zookeeper.server.auth.SASLAuthenticationProvider
requireClientAuthScheme=sasl
/etc/zookeeper/conf/acl.conf
),定義用戶、角色及權限:createUser user1 password1
createRole role1 "user1"
grant role1 "create,read,write" /path/to/node
sudo systemctl restart zookeeper
配置加密通信(可選)
zoo.cfg
:ssl.enable=true
ssl.keystore.location=/path/to/keystore.jks
ssl.keystore.password=yourpassword
用戶與文件權限管理
sudo adduser --system --no-create-home zookeeper
sudo chown -R zookeeper:zookeeper /var/lib/zookeeper /etc/zookeeper/conf
sudo chmod -R 750 /var/lib/zookeeper
sudo chmod 640 /etc/zookeeper/conf/zoo.cfg
監控與日志審計
log4j.logger.org.apache.zookeeper=INFO
),定期分析日志。auditd
)監控關鍵文件和目錄的訪問。注意:生產環境中需結合Kerberos/SSL等高級認證機制,并定期更新Zookeeper版本以修復安全漏洞。具體配置需根據實際業務需求調整。