【发布时间】:2021-10-03 05:25:31
【问题描述】:
我正在尝试通过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 吗?
【问题讨论】:
标签: ssl apache-kafka apache-kafka-security