kafka python客户端连接风暴_kafka配置单向ssl加密,以及加密后python客户端访问方式(kafka v1.1.0)...
一、kafka broker配置以及sh客户端的使用
最近在使用kafka集群的过程中,为了保证安全性,配置了ssl加密,首先按照官网的配置进行如下的设置
#!/bin/bash
#Step 1
keytool -keystore server.keystore.jks -alias localhost -validity 365 -keyalg RSA -genkey
#Step 2
openssl req -new -x509 -keyout ca-key -out ca-cert -days 365
keytool -keystore server.truststore.jks -alias CARoot -import -file ca-cert
keytool -keystore client.truststore.jks -alias CARoot -import -file ca-cert
#Step 3
keytool -keystore server.keystore.jks -alias localhost -certreq -file cert-file
openssl x509 -req -CA ca-cert -CAkey ca-key -in cert-file -out cert-signed -days 365 -CAcreateserial -passin pass:test1234
keytool -keystore server.keystore.jks -alias CARoot -import -file ca-cert
keytool -keystore server.keystore.jks -alias localhost -import -file cert-signed
这个流程下来,会生成以下文件:
server.keystore.jks 存储证书的密钥库文件
ca-key CA密钥,需要妥善保存
ca-cert CA证书(包含公钥)
cert-file 当前未签名的证书
cert-signed 当前已签名的证书
client.truststore.jks 客户端信任存储区
server.truststore.jks 服务端信任存储区
需要将server.keystore.jks server.truststore.jks 给每一个broker复制一份
kafka server.conf配置
listeners=SSL://XXXXXX:9092
ssl.keystore.location=/home/admin/ssl/server.keystore.jks
ssl.keystore.password=XXXXX
ssl.key.password=XXXXX
ssl.truststore.location=/home/admin/ssl/server.truststore.jks
ssl.truststore.password=XXXXXX
ssl.enabled.protocols=TLSv1.2,TLSv1.1,TLSv1
ssl.keystore.type=JKS
ssl.truststore.type=JKS
ssl.secure.random.implementation=SHA1PRNG
security.inter.broker.protocol=SSL
kafka consumer配置
security.protocol=SSL
ssl.truststore.location=/home/admin/ssl/client.truststore.jks
ssl.truststore.password=XXXXXX
kafka producer配置
security.protocol=SSL
ssl.truststore.location=/home/admin/ssl/client.truststore.jks
ssl.truststore.password=XXXXXX
二、python客户端配置
首先需要生产python客户端可用的证书格式:
keytool -list -rfc -keystore server.keystore.jks
keytool -exportcert -alias localhost -keystore server.keystore.jks -rfc -file certificate.pem
keytool -exportcert -alias CARoot -keystore server.keystore.jks -rfc -file CARoot.pem
本例使用的是python的客户端:kafka-python==1.4.2, kakfa由于版本是v1.1.0,所以参数设置的时候需要加入 api_version = (1, 1)
ssl_certfile = "certificate.pem"
ssl_cafile = "CARoot.pem"
producer = KafkaProducer(bootstrap_servers=address, value_serializer=lambda v: json.dumps(v).encode('utf-8'), retries=retries, api_version = (1, 1), request_timeout_ms=1000, ssl_check_hostname=False, ssl_certfile=ssl_certfile, security_protocol="SSL", ssl_cafile=ssl_cafile)
成功
kafka python客户端连接风暴_kafka配置单向ssl加密,以及加密后python客户端访问方式(kafka v1.1.0)...相关推荐
- 二进制安装kubernetes1.14.1-pod配置清单之客户端访问方式03
查看pod配置清单 参考: (https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.14/) [root@k8s-maste ...
- 【数据库】使用PLSQL工具时,ORACLE客户端连接串的配置
如果要使用PLSQL工具来连接数据库,首先要安装ORACLE客户端,然后去配置连接串. 你的客户端的安装目录下oracle\product\10.2.0\db_1\NETWORK\ADMIN 文件夹里 ...
- 客户端连接服务器,配置出错“连接超时”或者“无监听程序”解决方法
这两天在进行Oracle的客户端配置,服务器OS为Windows XP 64,客户端OS为Win7 64,oracle版本为11.2. 先说下服务器端自己的疑惑,由于自己是新手,很多都不明白是怎么个回 ...
- 远程客户端连接linux,远程控制服务(SSH)之Linux环境下客户端与服务端的远程连接...
本篇blog将讲述sshd服务提供的两种安全验证的方法,并且通过这两种方法进行两台linux虚拟机之间的远程登陆. 准备工作: (1)准备两台安装有linux系统的虚拟机,虚拟机软件采用vmware: ...
- Python与数据库[2] - 关系对象映射/ORM[4] - sqlalchemy 的显式 ORM 访问方式
sqlalchemy 的显式 ORM 访问方式 对于sqlalchemy,可以利用一种显式的ORM方式进行访问,这种方式无需依赖声明层,而是显式地进行操作.还有一种访问方式为声明层 ORM 访问方式. ...
- zookeeper专题:zookeeper集群搭建和客户端连接
文章目录 1. Zookeeper 集群模式介绍 2. zookeeper 集群搭建 3. 使用curate客户端连接zookeeper集群 1. Zookeeper 集群模式介绍 Zookeeper ...
- 存储学习之--StarWind虚拟存储配置和Linux客户端连接
存储学习之--StarWind虚拟存储配置和Linux客户端连接 在Windows 2008 Server上安装好StarWind后,就可以对它进行配置了 一.配置基本的StarWind 1 ...
- 解决ufw下pptp客户端连接问题
解决ufw下pptp客户端连接问题 解决ubuntu在启动ufw的情况下pptp客户端无法链接的问题. 修改/etc/ufw/before.rules 在COMMIT之前添加如下内容: -A ufw- ...
- python下载_安装_配置_以及第一行python程序---python工作笔记009
然后我们再来看python的下载安装和配置 感觉在所有编程语言中,Python的 安装是最简单的 www.python.org进入 去看到有个downloads 然后,选择下载windows版的 然后 ...
最新文章
- 用createinstallmedia创建可恢复的OSX安装DMG
- 不同虚拟局域网Vlan配置DHCP服务器
- SSH整合方案二(不带hibernate.cfg.xml)
- java 本年第一天_JAVA获取本周 本月 本年 第一天和最后一天
- OpenShift 4 Tekton (2) - OpenShift Pipeline入门-用Pipeline部署应用
- 主动土工围栏行业调研报告 - 市场现状分析与发展前景预测(2021-2027年)
- 计算机数字雨代码,cmd命令数字雨教程
- u盘启动怎么修复计算机,电脑店u盘启动winpe如何修复系统引导
- JDK自带javap命令反编译class文件和Jad反编译class文件(推荐使用jad)
- Hi3516A开发--电阻分压阻值计算
- 【Linux operation 18】 - SUSE 12 SP5在线安装Docker
- python出入库_基于Python对Excel数据入库的处理
- wamp5工具安装介绍
- Appro DM36x IPNC 4.0 开发环境配置
- 流程图 自定义函数_让客户信任感倍增?酷家乐推出“自定义清单”功能,为精准报价加码!...
- java 从set取值_怎样从java集合类set中取出数据?
- PHP GD库 生成图片水印
- NTC电阻短路(高温)电池未停止充电分析
- 从“策略模式”聊聊“设计模式”有多重要?
- Python中turtle画n层m个不同方向的圆,送你一朵小黄花