Kafka 基于SASL/SCRAM动态认证部署,kafka加账号密码登录部署

文章目录

前言

其实挺简单的几个配置文件,问大模型一直没说到点上,绕晕了。SASL/SCRAM 的认证涉及到要先在 zookeeper 上创建好认证信息,最后慢慢捋下来,其实就这么几个配置和命令。

下载 kafka

下载地址:https://kafka.apache.org/downloads

我下载的版本是 3.6.0

https://archive.apache.org/dist/kafka/3.6.0/kafka_2.12-3.6.0.tgz

安装

解压文件,到指定解压的目录下

shell 复制代码
tar -zxvf kafka_2.12-3.6.0.tgz
cd kafka_2.12-3.6.0

启动zookeeper

kafka 的目录本身是带有 zookeeper 的,我们可以直接使用,不需要再去下载一个 zookeeper

如果本身已经在电脑上装过了把 /tmp 目录下的 kafka-logzookeeper 目录删除

shell 复制代码
bin/zookeeper-server-start.sh config/zookeeper.properties

添加账号密码

先添加账号密码,否则先启动kafka会一直输出授权错误

shell 复制代码
./kafka-configs.sh --zookeeper localhost:2181 --alter --add-config 'SCRAM-SHA-256=[password=你的密码],SCRAM-SHA-512=[password=你的密码]' --entity-type users --entity-name 用户名

启动kafka

修改kafka配置文件

在最后添加这几行配置就可以

shell 复制代码
listeners=SASL_PLAINTEXT://127.0.0.1:9092
security.inter.broker.protocol=SASL_PLAINTEXT
sasl.mechanism.inter.broker.protocol=SCRAM-SHA-256
sasl.enabled.mechanisms=SCRAM-SHA-256

增加jaas授权文件

这个文件随便放哪里最后要在启动命令文件里面指定

shell 复制代码
KafkaServer {
    org.apache.kafka.common.security.scram.ScramLoginModule required
    username="用户名"
    password="你的密码";
};

修改启动文件,启动kafka

shell 复制代码
vi bin/kafka-server-start.sh
# 放在 exec 命令之前
export KAFKA_OPTS="-Djava.security.auth.login.config=前面的文件路径"
# 保存文件退出

# 执行启动命令
bin/kafka-server-start.sh config/server.properties

检查是否部署成功

shell 复制代码
cat > sasl_plaintext.cfg <<EOF
sasl.jaas.config=org.apache.kafka.common.security.scram.ScramLoginModule required username='用户名' password='你的密码';
security.protocol=SASL_PLAINTEXT
sasl.mechanism=SCRAM-SHA-256
EOF

./kafka-topics.sh  --bootstrap-server 127.0.0.1:9092 --command-config 文件夹目录/sasl_plaintext.cfg --list

正常输出的话就是部署成功了。

offset explore 连接

security 选择好类型

advanced 配置 mechanismSCRAM-SHA-256

jaas config 增加配置

shell 复制代码
org.apache.kafka.common.security.scram.ScramLoginModule required username='用户名' password='你的密码';
相关推荐
TTBIGDATA1 天前
【Atlas】Atlas Hook 消费 Kafka 报错:GroupAuthorizationException
hadoop·分布式·kafka·ambari·hdp·linq·ranger
indexsunny1 天前
互联网大厂Java面试实战:微服务与Spring生态技术解析
java·spring boot·redis·kafka·mybatis·hibernate·microservices
编程彩机1 天前
互联网大厂Java面试:从Spring Boot到分布式事务的技术场景解析
spring boot·kafka·分布式事务·微服务架构·java面试·技术解析
没有bug.的程序员1 天前
RocketMQ 与 Kafka 深度对垒:分布式消息引擎内核、事务金融级实战与高可用演进指南
java·分布式·kafka·rocketmq·分布式消息·引擎内核·事务金融
yumgpkpm1 天前
华为昇腾300T A2训练、微调Qwen过程,带保姆式命令,麒麟操作系统+鲲鹏CPU
hive·hadoop·华为·flink·spark·kafka·hbase
ApachePulsar1 天前
演讲回顾|谙流科技在 Kafka on Pulsar 之上的探索
分布式·科技·kafka
yumgpkpm2 天前
2026软件:白嫖,开源,外包,招标,晚进场(2025年下半年),数科,AI...中国的企业软件产业出路
大数据·人工智能·hadoop·算法·kafka·开源·cloudera
迎仔2 天前
09-消息队列Kafka介绍:大数据世界的“物流枢纽”
大数据·分布式·kafka
indexsunny2 天前
互联网大厂Java面试实录:Spring Boot微服务与Kafka消息队列实战解析
java·spring boot·微服务·面试·kafka·电商·技术解析
indexsunny3 天前
互联网大厂Java面试实战:从Spring Boot到微服务架构的技术问答解析
java·spring boot·redis·微服务·kafka·jwt·flyway