我将puppet服务器设置为docker-composition的一部分。
我有直接连接到容器的组成内的节点。 这可以正常工作,因为Puppet master使用本地名称自动创build一个SSL证书(只在docker组合中可用) ,其格式类似于:
puppet.upgrades.jjk32jl.svc.dockerapp.io
我也有外部节点,这不是组成部分,需要通过外部链接upgrades.myorg.com连接。
当我尝试与外部节点连接时,我得到:
错误:无法请求证书:服务器主机名“puppet.upgrades.jjk32jl.svc.dockerapp.io”与服务器证书不匹配; 预计其中一个是upgrades.myorg.com,DNS:木偶,DNS:upgrades.myorg.com
我可以设置第二个用于处理外部节点的证书(或使用alt-name)来处理这种情况吗? 或者是否需要redirect节点之间的内部通信,以在upgrades.myorg.com从外部进行连接?
更新:
我已经添加了几个alt-name到我的主证书现在看起来像这样当我使用puppet cert -la :
(SHA256)4B:A6:1F:C6:EA:8E:69:17:E3:43:C6:AE:A1:AE: BB:7B:9A:4F:09:5C:6F:92:BD:E7:C8:56:43:D8:03:12:59:58(alt名称:“DNS:puppet”,“DNS:puppet- 1.upgrades.fdafdafda.cont.dockerapp.io“,”DNS:puppet.c9039f55-d345-45d1-a8bd-8fec89481559.local.dockerapp.io“,”DNS:puppet.upgrades.jjk32jl.svc.dockerapp.io“ )
puppet.upgrades.jjk32jl.svc.dockerapp.io被列为alt-name,但我得到:
错误:无法请求证书:服务器主机名“puppet.upgrades.jjk32jl.svc.dockerapp.io”与服务器证书不匹配; 预计其中一个puppet.64b21c37-fa14-4406-b931-5add61cf582e.local.dockerapp.io,DNS:puppet,DNS:puppet.64b21c37-fa14-4406-b931-5add61cf582e.local.dockerapp.io
这是令人困惑的,因为puppet.64b21c37-fa14-4406-b931-5add61cf582e.local.dockerapp.io没有被提及作为主证书上的替代名称。
处理这个最简洁的方法是添加另一个ALT名称。 您可以通过设置dns_alt_names选项来完成此dns_alt_names ,然后按照此过程重新生成在此处 alt名称选项文档中列出的主证书(添加新名称)。