![生成具有多个主机名的服务器和客户端证书](https://linux22.com/image/38363/%E7%94%9F%E6%88%90%E5%85%B7%E6%9C%89%E5%A4%9A%E4%B8%AA%E4%B8%BB%E6%9C%BA%E5%90%8D%E7%9A%84%E6%9C%8D%E5%8A%A1%E5%99%A8%E5%92%8C%E5%AE%A2%E6%88%B7%E7%AB%AF%E8%AF%81%E4%B9%A6.png)
第一次启动我的 Puppet Master 时,它会自动生成自己的服务器证书,这太棒了。
我的服务器的主机名是kungfumaster
,Puppet Master 生成一个证书,通用名称为:
kungfumaster.mynetwork.com
它还添加以下内容作为主题备用 DNS 名称:
X509v3 Subject Alternative Name:
DNS:kungfumaster.mynetwork.com, DNS:puppet, DNS:puppet.mynetwork.com
我不完全知道它是如何发现该域位于 中的mynetwork.com
,尽管它确实如此,因为hostname
没有通过任何参数配置显示 FQDN。
然而,它似乎错过了一个名称:不合格的主机名kungfumaster
。有趣的是,它确实为puppet
和附加了一个域puppet.mynetwork.com
,但它方便地跳过了kungfumaster
。
在我的 Puppet Master 启动脚本中,如何正确生成服务器的证书,即:使用所有必需的 DNS 名称?
答案1
在运行任何操作之前,请使用该puppet cert
工具生成具有指定的备用 DNS 名称列表的证书名称:
puppet cert generate --dns_alt_names \
kungfumaster,kungfumaster.mynetwork.com kungfumaster
如果您已经生成了一个,请将其清除:
puppet cert clean -a
我仍然需要弄清楚它如何知道我的区域信息,但这是另一个问题。