阅读量:0
Ubuntu上Zookeeper安全设置指南
1. 配置防火墙限制访问
使用ufw(Uncomplicated Firewall)限制对Zookeeper端口的访问,仅允许可信IP连接。
- 启用防火墙:
sudo ufw enable - 允许SSH(确保远程管理安全):
sudo ufw allow OpenSSH - 限制Zookeeper客户端端口(默认2181):仅允许可信IP(如
192.168.1.0/24)访问,或拒绝其他所有IP:sudo ufw allow from 192.168.1.0/24 to any port 2181 # 允许指定网段 sudo ufw deny 2181 # 拒绝其他所有IP - 检查防火墙状态:
sudo ufw status verbose
2. 配置ACL(访问控制列表)
通过ACL定义节点级别的权限(创建、读取、写入、删除、管理等),常用机制包括world(任何人)、auth(已认证用户)、digest(用户名/密码)。
- 启用ACL:编辑
/etc/zookeeper/conf/zoo.cfg,添加:authProvider.1=org.apache.zookeeper.server.auth.SASLAuthenticationProvider requireClientAuthSchemes=sasl - 设置节点ACL(以
digest为例):- 连接Zookeeper客户端:
/opt/zookeeper/bin/zkCli.sh -server localhost:2181 - 添加用户认证:
addauth digest username:password - 设置节点权限(如
/secure_node仅user1可读写):setAcl /secure_node digest:user1:Base64密码 user1:cdrwa - 查看节点ACL:
getAcl /secure_node
- 连接Zookeeper客户端:
3. 启用SASL/Kerberos认证
通过SASL(支持Kerberos)实现强身份认证,适用于生产环境。
- 安装SASL相关包:
sudo apt install libsasl2-2 libsasl2-modules sasl2-bin - 配置JAAS文件(
/etc/zookeeper/conf/zookeeper_jaas.conf):Server { org.apache.zookeeper.server.auth.DigestLoginModule required user_super="super_secret_password" user_admin="admin_password"; }; - 修改
zoo.cfg启用JAAS:jaasLoginRenew=3600000 # 认证刷新间隔(毫秒) - 重启Zookeeper使配置生效:
sudo systemctl restart zookeeper
4. 配置SSL/TLS加密通信
加密Zookeeper客户端与服务器之间的通信,防止数据泄露。
- 生成SSL证书(使用
keytool):mkdir -p /etc/zookeeper/ssl keytool -genkey -alias zookeeper -keyalg RSA -keysize 2048 -keystore /etc/zookeeper/ssl/zookeeper.jks -validity 3650 - 配置
zoo.cfg启用SSL:ssl.enable=true ssl.keystore.location=/etc/zookeeper/ssl/zookeeper.jks ssl.keystore.password=your_keystore_password ssl.keyPassword=your_key_password - 重启Zookeeper:
sudo systemctl restart zookeeper
5. 限制SSH访问(管理安全)
若通过SSH管理Zookeeper服务器,需强化SSH配置:
- 编辑
/etc/ssh/sshd_config:PermitRootLogin no # 禁止root直接远程登录 PasswordAuthentication no # 禁用密码认证(使用密钥) AllowUsers your_username # 仅允许指定用户登录 - 重启SSH服务:
sudo systemctl restart sshd
6. 监控与定期维护
- 监控日志:定期检查Zookeeper日志(
/var/log/zookeeper/zookeeper.out)和系统日志,识别异常操作。 - 更新配置:定期更新Zookeeper版本(修复安全漏洞)和防火墙规则,应对新的安全威胁。
- 备份数据:定期备份
dataDir目录(默认/var/lib/zookeeper),防止数据丢失
以上就是关于“ubuntu上zookeeper的安全设置怎么做”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm