繁体   English   中英

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

[英]Setup kafka security cluster with SASL/PLAIN

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

但未能找到设置密钥的 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}

稍后在配置代理的server.properties 时,我们需要设置一个 super.users:

由于本教程将代理间安全协议配置为 SSL,因此将超级用户名设置为代理证书中配置的专有名称。 (请参阅其他授权配置选项)。

super.users=User:;User:;User:;User:kafka-broker-metric-reporter

问题是 dname 必须遵循一个模式:“CN=cName, OU=orgUnit, O=org, L=city, S=state, C=countryCode”

此外,kafka 的 CN 有一个限制:它必须等于 SAN FQDN 设置。

所以,一个问题是:

如果我们有一个 localhost 并使用单个代理设置集群,我们是否应该为“CN=localhost”等键设置 dname,命令将是:

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

然后在 server.properties 条目中:

super.users=User:CN=localhost

?

如果是真的,那么第二个问题:如果我们仍然有一个本地主机并在那里设置了 2 个单独的代理。 那么,我们会有相同的 dname 吗?

实际上,使用 dname 在配置中添加用户是正确的:

super.users=用户:CN=本地主机

这不是那么明显,但它的工作原理。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM