建议zookeeper和kafka使用同一个认证文件
以下是2.8版本的。3.0版本及以上尚未测试验证
# kafka和zk公用同一个认证$cat kafka_server_jaas.confKafkaServer {org.apache.kafka.common.security.plain.PlainLoginModule requiredusername="admin"password="zfyx@2022"user_admin="zfyx@2022"user_producer="zfyx@2022"user_consumer="zfyx@2022";};
https://www.yuque.com/geray-alxoc/bapt5y/npqss5?singleDoc# 《基础镜像》
1、zk
1. 复制启动脚本和配置文件为sasl认证的
cp zookeeper-server-start.sh zookeeper-server-start-sasl.shcp zookeeper.properties zookeeper-sasl.properties
2. 认证文件
cat > zk-server-jaas.conf << EOFServer {org.apache.zookeeper.server.auth.DigestLoginModule requireduser_super="admin"user_bob="gsww@SJJH!2.0";};EOF
3. 启动脚本中添加认证配置
- 修改zk启动脚本指定认证文件(最后一行中添加认证文件参数)
exec $base_dir/kafka-run-class.sh $EXTRA_ARGS -Djava.security.auth.login.config=/data/kafka-jh/config/zk-server-jaas.conf org.apache.zookeeper.server.quorum.QuorumPeerMain "$@"
4. 修改zk配置文件,添加认证信息
authProvider.1=org.apache.zookeeper.server.auth.SASLAuthenticationProviderrequireClientAuthScheme=sasljaasLoginRenew=3600000
5. 启动测试
# 前台启动./zookeeper-server-start-sasl.sh ../config/zookeeper-sasl.properties# 后台启动./zookeeper-server-start-sasl.sh -daemon ../config/zookeeper-sasl.properties
2、kafka
1. 复制启动脚本和配置文件为sasl认证
cp kafka-server-start.sh kafka-server-start-sasl.shcp server.properties server-sasl.properties
2. 认证文件
cat > kafka-server-jaas.conf << EOFKafkaServer {org.apache.kafka.common.security.plain.PlainLoginModule requiredusername="admin"password="admin"user_admin="admin"user_rex="gsww@SJJH!2.0"user_alice="gsww@SJJH!2.0"user_lucy="gsww@SJJH!2.0";};EOF
3. 启动脚本中天剑认证配置
- 修改kafka启动脚本指定认证文件(最后一行中添加认证文件参数)
exec $base_dir/kafka-run-class.sh $EXTRA_ARGS -Djava.security.auth.login.config=/data/kafka-jh/config/kafka-server-jaas.conf kafka.Kafka "$@"
4. 修改kafka配置文件,添加认证信息
listeners=SASL_PLAINTEXT://localhost:9092security.inter.broker.protocol=SASL_PLAINTEXTsasl.enabled.mechanisms=PLAINsasl.mechanism.inter.broker.protocol=PLAINauthorizer.class.name=kafka.security.authorizer.AclAuthorizersuper.users=User:admin
5. 启动测试
# 前台启动./bin/kafka-server-start-sasl.sh config/server-sasl.properties# 后台启动./bin/kafka-server-start-sasl.sh -daemon config/server-sasl.properties
