【发布时间】:2022-02-14 05:36:36
【问题描述】:
我已经用 Strimzi 配置了一个 Kafka 集群。我已启用 tls 身份验证,并已使用 NodePort 公开该服务。
之后,我导出了我的 ca 和密码以生成一个 JKS 以连接 Kafka。但问题是我遇到了下一个错误:
java.security.cert.CertificateException:没有主题替代名称 找到匹配的 IP 地址 172.26.195.44
导出密码和证书:
kubectl get secret kafka-cluster-cluster-ca-cert -o jsonpath='{.data.ca\.crt}' | base64 --decode > ca.crt
kubectl get secret kafka-cluster-cluster-ca-cert -o jsonpath='{.data.ca\.password}' | base64 --decode > ca.password
为了生成 jks,我做了以下步骤:
keytool -genkey -alias kafka -keyalg RSA -keystore kafka.jks -keysize 2048
keytool -importkeystore -srckeystore kafka.jks -destkeystore kafka.jks -deststoretype pkcs12
export CERT_FILE_PATH=ca.crt
export CERT_PASSWORD_FILE_PATH=ca.password
export KEYSTORE_LOCATION=kafka.jks
export PASSWORD=`cat $CERT_PASSWORD_FILE_PATH`
export CA_CERT_ALIAS=strimzi-kafka-cert
sudo keytool -importcert -alias $CA_CERT_ALIAS -file $CERT_FILE_PATH -keystore $KEYSTORE_LOCATION -keypass $PASSWORD
sudo keytool -list -alias $CA_CERT_ALIAS -keystore $KEYSTORE_LOCATION
我也尝试添加 -ext SAN=dns:test.abc.com,ip:172.26.195.44
对此有什么想法吗?
【问题讨论】:
-
你好。 @Jakub 的回答能解决问题吗?
-
我会尽快尝试
标签: kubernetes apache-kafka ssl-certificate jks strimzi