kafka配置SASL
适用于kafka_2.11-1.1.1版本
第1步
将kafka_client_jaas.conf/kafka_server_jaas.conf/kafka_zoo_jaas.conf三个文件放入kafka的config文件夹中,文件中配置用户,admin用户必须配置。
- kafka_client_jaas.conf内容如下
KafkaClient {
org.apache.kafka.common.security.plain.PlainLoginModule required username="admin" password="admin";
};
- kafka_server_jaas.conf内容如下
KafkaServer {org.apache.kafka.common.security.plain.PlainLoginModule requiredusername="admin"password="admin"user_admin="admin"user_test="test#2018";
};
KafkaClient {org.apache.kafka.common.security.plain.PlainLoginModule requiredusername="admin"password="admin";
};Client {org.apache.kafka.common.security.plain.PlainLoginModule requiredusername="admin"password="admin";
};
- kafka_zoo_jaas.conf内容如下
ZKServer{org.apache.kafka.common.security.plain.PlainLoginModule requiredusername="admin"password="admin"user_admin="admin";
};
第2步
修改kafka的bin文件夹中的zookeeper-server-start.sh,
添加:
export KAFKA_OPTS=" -Djava.security.auth.login.config=/data/application/kafka_2.11-1.1.1/config/kafka_zoo_jaas.conf -Dzookeeper.sasl.serverconfig=ZKServer"
第3步
修改kafka的bin文件夹中的kafka-server-start.sh,
添加:
export KAFKA_OPTS=" -Djava.security.auth.login.config=/data/application/kafka_2.11-1.1.1/config/kafka_server_jaas.conf"
第4步
修改kafka的bin文件夹中的kafka-console-producer.sh
添加:
export KAFKA_OPTS=" -Djava.security.auth.login.config=/data/application/kafka_2.11-1.1.1/config/kafka_client_jaas.conf"
第5步
修改kafka的bin文件夹中的kafka-console-consumer.sh
添加:
export KAFKA_OPTS=" -Djava.security.auth.login.config=/data/application/kafka_2.11-1.1.1/config/kafka_client_jaas.conf"
第6步
修改kafka的config文件夹中的consumer.properties
添加:
security.protocol=SASL_PLAINTEXT
sasl.mechanism=PLAIN
第7步
修改kafka的config文件夹中的producer.properties
添加:
security.protocol=SASL_PLAINTEXT
sasl.mechanism=PLAIN
第8步
修改kafka的config文件夹中的zookeeper.properties
添加:
authProvider.1=org.apache.zookeeper.server.auth.SASLAuthenticationProvider
requireClientAuthScheme=sasl
jaasLoginRenew=3600000
第9步
修改kafka的config文件夹中的server.properties
修改:
listeners=SASL_PLAINTEXT://192.168.1.115:9092
添加:
#使用的认证协议
security.inter.broker.protocol=SASL_PLAINTEXT
#SASL机制
sasl.enabled.mechanisms=PLAIN
sasl.mechanism.inter.broker.protocol=PLAIN
#完成身份验证的类
authorizer.class.name=kafka.security.auth.SimpleAclAuthorizer
#如果没有找到ACL(访问控制列表)配置,则允许任何操作。
#allow.everyone.if.no.acl.found=true
super.users=User:admindelete.topic.enable=true
auto.create.topics.enable=false
第10步
启动zookeeper服务
执行
sh bin/zookeeper-server-start.sh config/zookeeper.properties
第11步
启动kafka服务
执行
sh bin/kafka-server-start.sh config/server.properties
第12步
查看topic列表
执行
sh bin/kafka-topics.sh --list --zookeeper localhost:2181
第13步
创建新的topic
执行
sh bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 16 --topic test
第14步
给admin用户授权
执行
sh bin/kafka-acls.sh --authorizer-properties zookeeper.connect=localhost:2181 --add --allow-principal User:admin --group=* --topic=*
第15步
给用户test授予某个topic的读写的权限
执行
sh bin/kafka-acls.sh --authorizer-properties zookeeper.connect=localhost:2181 --add --allow-principal User:test --operationRead --operationWrite --topic test --group=*
说明:
控制读写:–operationRead–operationWrite
控制消费组:不控制组 --group=*,指定消费组 --grouptest-comsumer-group
第16步
移除权限
执行
sh bin/kafka-acls.sh --authorizer-properties zookeeper.connect=localhost:2181 --remove --allow-principal User:test --allow-host 192.168.1.101 --operationRead --operationWrite --topic test
第17步
列出topic为test的所有权限账户
执行
sh bin/kafka-acls.sh --authorizer-properties zookeeper.connect=localhost:2181 --list --topic test
第18步
测试启动消费者
执行
sh bin/kafka-console-consumer.sh --bootstrap-server 192.168.1.115:9092 --topic test --from-beginning --consumer.config config/consumer.properties
第19步
测试启动生产者
执行
sh bin/kafka-console-producer.sh --broker-list 192.168.1.115:9092 --topic test --producer.config config/producer.properties
第20步
启用kafka-manager,需要使用最新版本1.3.3.21,
链接:https://pan.baidu.com/s/1H6rMOdKrEJ59pivgCkSdjg
提取码:vreq
第21步
将my-jaas.conf移到kafa-manager的conf文件夹中
my-jaas.conf内容如下:
KafkaClient {org.apache.kafka.common.security.plain.PlainLoginModule requiredusername="admin"password="admin";
};Client {org.apache.kafka.common.security.plain.PlainLoginModule requiredusername="admin"password="admin";
};
第22步
修改kafa-manager的conf文件夹中的consumer.properties,
security.protocol=SASL_PLAINTEXT
sasl.mechanism=PLAIN
第23步
修改kafa-manager的conf文件夹中的application.conf
kafka-manager.consumer.properties.file=(上面修改的consumer.properties)
第24步
启动kafka-manager
bin/kafka-manager -Djava.security.auth.login.config=conf/my-jaas.conf -Dconfig.file=conf/application.conf
kafka配置SASL相关推荐
- 安装 kafka 配置 sasl 认证
一.安装kafka 1.安装jdk yum serach jdk # 查找jdk yum install java-latest-openjdk.x86_64 # 选择jdk安装,这里选择最新的 ...
- go kafka 配置SASL认证及实现SASL PLAIN认证功能
用户认证功能,是一个成熟组件不可或缺的功能.在0.9版本以前kafka是没有用户认证模块的(或者说只有SSL),好在kafka0.9版本以后逐渐发布了多种用户认证功能,弥补了这一缺陷(这里仅介绍SAS ...
- Kafka配置SASL/PLAIN认证
1.安装zk,kafka 2.配置server.properties security.inter.broker.protocol=SASL_PLAINTEXT sasl.mechanism.inte ...
- Kafka—配置SASL/PLAIN认证客户端及常用操作命令
介绍 SASL/PLAIN 是一种简单的 username/password安全认证机制,本文主要总结服务端开启该认证后,命令行客户端进行配置的操作流程. 配置 增加jaas.properties ...
- kafka sasl java_Kafka 集群配置SASL+ACL
** Kafka 集群配置SASL+ACL 测试环境:** 系统: CentOS 6.5 x86_64 JDK : java version 1.8.0_121 kafka: kafka_2.11-1 ...
- KafKa 开启 SASL 验证
项目需要使用kafka的 sasl 权限认证,记录一下kafka的配置. 参考自 Kafka 中文文档 注:本文kafka版本是2.1.2,安装目录是 /user/local/kafka2.1.1 . ...
- Kafka配置SASL_SSL认证传输加密
Kafka配置SASL_SSL认证传输加密 一.SSL证书配置 1.生成证书 如我输入命令如下:依次是 密码-重输密码-名与姓-组织单位-组织名-城市-省份-国家两位代码-密码-重输密码,后面告警不用 ...
- zookeeper和kafka的SASL认证以及生产实践
一.什么是zookeeper? ZooKeeper是一个集中的服务,用于维护配置信息.命名.提供分布式同步以及提供组服务.所有这些类型的服务都以某种形式被分布式应用程序使用.每次它们被实现时,都有大量 ...
- Kafka 开启 SASL/PLAINTEXT 认证及 ACL
Linux 安装 Kafka 并开启 SASL/PLAINTEXT 认证 前言 一.环境准备 1.组件版本 2.下载文件 3.上传文件 二.安装 Zookeeper(单节点) 三.安装 Kafka(单 ...
最新文章
- guava api_使用Google Guava的订购API
- qtreewidget 获取根节点_详解去中心化信任根dRoT技术
- 一个LinkedList的简单体现(用户缓存手机通话记录)
- tensorflow.python.framework.tensor_shape.is_fully_defined()
- 阿里云最新虚拟化研发岗招聘
- Leetcode: One Edit Distance
- delphi连接access数据库的步骤(详细教程)
- 【静夜思】一些抽象代数的核心思想和实际应用
- STM32F4——FLASH闪存编程原理
- 蓝桥杯练习------python字符串逆序
- 虚拟现实(VR)技术的升级应用|时空克隆 三维视频融合 投影融合 点卯 魔镜系列
- html中鼠标点击图片变动,JS实现页面鼠标点击出现图片特效
- python 合成gif与拆分gif为png图片
- 微信开发解决方案:(一)概述
- 计算机系给未来的自己写信,给未来的自己写信
- 编写c++程序过程中出现的错误 annonymous type with no linkage used to declare variable
- Xposed插件开发手册(1): Xposed框架的安装
- 2020最全微服务:SpringBoot+Cloud+Docker
- visdom API 方便使用查阅
- [yzhpdh多读paper]Mass-scale emotionality reveals human behaviour and marketlace success
热门文章
- matlab处理各种数据、文件
- Hibernate 查询Criterion数据
- springboot毕设项目东莞汉庭酒店的酒店管理系统的设计与实现4ccnv(java+VUE+Mybatis+Maven+Mysql)
- vue实现文字翻转效果
- 如何通过付费咨询,薅知乎的羊毛?
- win10自带的框选截图快捷键
- 近期爬虫学习体会以及爬豆瓣Top250源码实战
- linux和手机通讯,在Linux的系统下使用红外进行手机通讯
- 计算机必须设置默认打印机,电脑系统怎么默认打印机 默认打印机的设置教程...
- Peekaboo—站立式会议+alpha冲刺:Day2冲刺随笔