kafka3.4.x配置sasl认证

2024-03-01 07:52
文章标签 配置 认证 sasl kafka3.4

本文主要是介绍kafka3.4.x配置sasl认证,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

背景这里kafka使用的是单独部署的zookeeper 需要走认证配置

我这里使用的zookeeper版本是3.8.3 kafka 3.4.0

kafka安装目录:/usr/local/bin/xx/kafka

zookeeper安装目录:/usr/local/bin/xx/zookeeper

  1. 修改配置文件
    1. 找到kafka的/usr/local/bin/xx/kafka/config/server.properties文件
    2. 修改配置
      1.KAFKA:
      在server.properties 调整
      改动之前:
      listeners=SASL_PLAINTEXT://0.0.0.0:9092
      advertised.listeners=SASL_PLAINTEXT://x.x.x.x:9092
      改动之后:
      listeners=SASL_PLAINTEXT://0.0.0.0:9092
      advertised.listeners=SASL_PLAINTEXT://x.x.x.x:9092
      security.inter.broker.protocol=SASL_PLAINTEXT  
      sasl.enabled.mechanisms=PLAIN  
      sasl.mechanism.inter.broker.protocol=PLAIN  
      authorizer.class.name=kafka.security.authorizer.AclAuthorizer
      allow.everyone.if.no.acl.found=true
      zookeeper.client.sasl=true
      2.ZOOKEEPER:
      直接在zoo.cfg 最后增加authProvider.1=org.apache.zookeeper.server.auth.SASLAuthenticationProvider
      requireClientAuthScheme=sasl
      jaasLoginRenew=3600000
  2. 增加认证jaas.conf文件
    1. 1.在kafka安装目录创建文件/usr/local/bin/xx/kafka/config/
      touch kafka_server_jaas.conf
      内容如下:
      KafkaServer {org.apache.kafka.common.security.plain.PlainLoginModule requiredusername="admin"password="xx"user_admin="xx"user_kafka="xx";
      };Client {org.apache.kafka.common.security.plain.PlainLoginModule requiredusername="kafka"password="xx";
      };KafkaClient {org.apache.kafka.common.security.plain.PlainLoginModule requiredusername="kafka"password="xx";
      };
      2.在zookeeper安装目录创建文件/usr/local/bin/xx/zookeeper/conf/
      touch zk_server_jaas.conf
      内容如下:
      Server {org.apache.kafka.common.security.plain.PlainLoginModule required username="admin" password="xx" user_kafka="xx";
      };
      ps:这里创建了两个账户 admin和kafka3.全部设置完毕,重启zookeeper和kafka
  3. 消费验证
    1. 1.在kafka安装目录的config目录下创建鉴权文件
      cd /usr/local/bin/xx/kafka/config
      touch sasl.config
      内容如下:
      security.protocol=SASL_PLAINTEXT sasl.mechanism=PLAIN sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required username="kafka" password="xx";2.启动消费者
      /usr/local/bin/xx/kafka/bin/kafka-console-consumer.sh --bootstrap-server 127.0.0.1:9092 --topic test -consumer.config /usr/local/bin/xx/kafka/config/sasl.config
      3.启动生产者
      /usr/local/bin/cscmc/app/kafka/bin/kafka-console-producer.sh --broker-list 127.0.0.1:9092 --topic test -producer.config /usr/local/bin/xx/kafka/config/sasl.config
      4.自产自消能够成功说明配置全部正确
      

  4. 注意事项
    1. 单独部署的zookeeper 开启认证缺少依赖包,直接将kafka/libs下的kafka-client和lz4-java拷贝到zookeeer/lib下
    2. 新版本的kafka配置文件的类有更改由authorizer.class.name=kafka.security.auth.SimpleAclAuthorizer --> kafka.security.authorizer.AclAuthorizer

这篇关于kafka3.4.x配置sasl认证的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/761714

相关文章

SpringBoot中HTTP连接池的配置与优化

《SpringBoot中HTTP连接池的配置与优化》这篇文章主要为大家详细介绍了SpringBoot中HTTP连接池的配置与优化的相关知识,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一... 目录一、HTTP连接池的核心价值二、Spring Boot集成方案方案1:Apache HttpCl

Maven 插件配置分层架构深度解析

《Maven插件配置分层架构深度解析》:本文主要介绍Maven插件配置分层架构深度解析,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录Maven 插件配置分层架构深度解析引言:当构建逻辑遇上复杂配置第一章 Maven插件配置的三重境界1.1 插件配置的拓扑

Spring Boot集成Logback终极指南之从基础到高级配置实战指南

《SpringBoot集成Logback终极指南之从基础到高级配置实战指南》Logback是一个可靠、通用且快速的Java日志框架,作为Log4j的继承者,由Log4j创始人设计,:本文主要介绍... 目录一、Logback简介与Spring Boot集成基础1.1 Logback是什么?1.2 Sprin

VSCode中配置node.js的实现示例

《VSCode中配置node.js的实现示例》本文主要介绍了VSCode中配置node.js的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着... 目录一.node.js下载安装教程二.配置npm三.配置环境变量四.VSCode配置五.心得一.no

Gradle在国内配置镜像加速的实现步骤

《Gradle在国内配置镜像加速的实现步骤》在国内使用Gradle构建项目时,最大的痛点就是依赖下载贼慢,甚至卡死,下面教你如何配置国内镜像加速Gradle下载依赖,主要是通过改写repositori... 目录引言一、修改 build.gradle 或 settings.gradle 的 reposito

使用easy connect之后,maven无法使用,原来需要配置-Djava.net.preferIPv4Stack=true问题

《使用easyconnect之后,maven无法使用,原来需要配置-Djava.net.preferIPv4Stack=true问题》:本文主要介绍使用easyconnect之后,maven无法... 目录使用easGWowCy connect之后,maven无法使用,原来需要配置-DJava.net.pr

史上最全nginx详细参数配置

《史上最全nginx详细参数配置》Nginx是一个轻量级高性能的HTTP和反向代理服务器,同时也是一个通用代理服务器(TCP/UDP/IMAP/POP3/SMTP),最初由俄罗斯人IgorSyso... 目录基本命令默认配置搭建站点根据文件类型设置过期时间禁止文件缓存防盗链静态文件压缩指定定错误页面跨域问题

nginx负载均衡及详细配置方法

《nginx负载均衡及详细配置方法》Nginx作为一种高效的Web服务器和反向代理服务器,广泛应用于网站的负载均衡中,:本文主要介绍nginx负载均衡及详细配置,需要的朋友可以参考下... 目录一、 nginx负载均衡策略1.1 基本负载均衡策略1.2 第三方策略1.3 策略对比二、 nginx配置2.1

Android开发环境配置避坑指南

《Android开发环境配置避坑指南》本文主要介绍了Android开发环境配置过程中遇到的问题及解决方案,包括VPN注意事项、工具版本统一、Gerrit邮箱配置、Git拉取和提交代码、MergevsR... 目录网络环境:VPN 注意事项工具版本统一:android Studio & JDKGerrit的邮

SpringBoot3.4配置校验新特性的用法详解

《SpringBoot3.4配置校验新特性的用法详解》SpringBoot3.4对配置校验支持进行了全面升级,这篇文章为大家详细介绍了一下它们的具体使用,文中的示例代码讲解详细,感兴趣的小伙伴可以参考... 目录基本用法示例定义配置类配置 application.yml注入使用嵌套对象与集合元素深度校验开发