这就是问题所在:我有一个包含多个节点的 Kubernetes 集群,我想为我的所有节点安装一个包含 key 、crt、 keystore 数据的 key 。
我为单个节点生成它们的过程如下:
- 生成绑定(bind)到 dns=hostname 和 ip=host_ip 的 keystore
- 提取csr
- 将 csr 提交到我的内部 CA 并下载 p7b 证书链
- 将证书链导入回 keystore
- 将 keystore 导出为 PKCS12 格式
- 提取crt
- 提取 key
假设我已经为我的所有节点完成了这些步骤。我该怎么做才能将所有这些捆绑到一组 key 和 keystore 文件中?我可以将在第 2 步获得的所有证书请求合并到一个 csr 中并为此下载 p7b 并继续执行吗?
最佳答案
对于也在寻找解决方案的任何人,我设法通过生成具有多个 dns/ip 条目的 keystore 来为所有主机名生成一个证书。
例子:
keytool -genkey -keyalg RSA -alias <your_alias> -keystore <your_keystore_name>.jks -storetype JKS -keysize 2048 -validity 365 -ext SAN=dns:<hostname1>,ip:<ip1>,dns:<hostname2>,ip:<ip2>
您还可以使用 KeyStore Explorer 生成相同的内容(通过 GUI),它还支持 *.domain.com 等通配符
关于ssl - 为多个 Kubernetes 节点生成单个证书,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59305168/