当前位置: 首页 > 知识库问答 >
问题:

使用SASL/PLAIN设置kafka安全集群

南门新荣
2023-03-14

我试图通过https://docs.confluent.io/platform/current/security/security_tutorial.htmlSSL密钥和用户名/密码来设置集群,就像描述的那样。

但是未能找到一种合适的方法来设置密钥的dname和代理的参数“super.users”

它被告知创建一个密钥:

# Without user prompts, pass command line arguments keytool -keystore kafka.server.keystore.jks -alias localhost -keyalg RSA -validity {validity} -genkey -storepass {keystore-pass} -keypass {key-pass}
-dname {distinguished-name} -ext SAN=DNS:{hostname}

稍后配置代理服务器。设置超级用户所需的属性:

因为本教程将代理间安全协议配置为 SSL,所以请将超级用户名设置为在代理的证书中配置的可分辨名称。(请参阅其他授权配置选项)。

super.users=User:; User:; User:;用户:; kafka-brober-metrice-记者

问题是 dname 必须遵循一种模式:“CN=cName,OU=组织单位,O=组织,L=城市,S=州,C=国家代码”

此外,对Kafka来说,CN是有限制的:它必须是平等的圣FQDN设置。

所以,一个问题是:

如果我们有一个本地主机并使用单个代理设置集群,我们是否应该为密钥设置dname,如“CN =本地主机”,命令将是:

keytool -keystore kafka.server.keystore.jks -alias localhost -genkey
-dname "CN=localhost" -ext SAN=DNS:localhost

然后在服务器中执行。属性条目:

super.users=User:CN=localhost

?

如果是真的,第二个问题是:如果我们仍然有一个localhost,并在那里建立两个独立的经纪人。所以,我们会有一个相同的dname?

共有1个答案

墨翔宇
2023-03-14

实际上,在config中使用他们的dname添加用户是正确的:

super.users=用户: CN=localhost

它不是那么明显,但它是有效的。

 类似资料:
  • 我试图配置SASL/PLAIN与SSL在我们的Kafka环境。SSL部分已经完成,但是我在启动动物园管理员时遇到了以下错误。 有人为动物园管理员和经纪人配置了SASL/PLAIN和SSL吗? 服务器代理配置 动物园管理员配置 JAAS动物园管理员配置文件 JAAS代理配置文件 启动错误 代理启动命令 环境变量 第1学期 在2号航站楼

  • 我使用的是Confluent Community 6.0.1。三个节点Kafka集群: devKafka04:Kafka Broker1、Zookeeper 1 开发Kafka05: Kafka经纪人2, 动物园管理员 2 devKafka06:Kafka经纪人3,动物园管理员3 SSL加密已经在Kafka经纪人上运行良好。 我想添加SASL以启用Kafka和Zookeeper之间的相互身份验证。

  • 我不是专家,但知道kafka常用的身份验证机制。kafka的常见用法/实现使用SASL Plain或SASL SCRAM,即 或(不推荐用于PLAIN机制) 和 或512或(不再推荐)。 然后我看到JAAS配置如下- 我不明白的是 JAAS 如何适应客户端和服务器体系结构。有没有一个架构图,我可以参考以获得更大的图景。我曾在谷歌上搜索过kafka的安全架构以及JAAS如何适应它,但没有运气。 有人

  • 我想创建kafka consumer,它使用安全协议SASL_SSL和SASL merchanism PLAIN。有人能帮我配置这些详细信息吗? 我已经阅读了很多关于如何配置SASL细节的文档,但仍然没有弄清楚如何配置SASL。这里我附加了我用来创建Kafka消费者的代码 堆栈跟踪 反序列化函数:

  • 问题内容: 我正在尝试使用RestTemplate和Jackson json转换器调用Restful JSON服务。现在,为了调用该服务,我需要传递一个安全性cookie。我可以通过使用URLConnection来实现(请参见下面的代码) RestTemplate中与此并行的是什么?这是我一直在使用RestTemplate调用Restful Service的代码片段: 我无法弄清楚在使用RestT

  • 我将开始讲述我想要实现的目标。所以我的设置是: > 6 VM运行Ubuntu 14.04版本 - 在其中3个中,我已经设置了Kafka,在3中,我创建了动物园管理员实例。 我开始生产和消费,一切似乎都很好,没有问题。 现在我想使用kafka 0.9版本的SSL来保护设置。我只想在客户端和kafka代理之间设置SSL,以便它们能够安全通信。我遵循以下链接。 我所做的唯一更改是:我用kafka代理的I