洋娃娃 Cheat Sheet
Puppet 是一个配置管理工具,可以帮助系统管理员自动化服务器基础设施的配置、配置和管理。它通常在主/代理模式中运行,主服务器管理多个代理节点的配置。主和代理之间的通信是通过客户端验证的 HTTPS 授予和保障的,这需要有效识别 SSL 证书。
此 cheat sheet 风格指南为使用娃娃 cert
命令来管理这些证书提供了快速参考。
** 如何使用此指南:**
- 此指南是 cheat sheet 格式,自含命令行片段
- 跳到任何与您试图完成的任务相关的部分。
<$>[注]
注: 如果娃娃
不在你的路径中,你需要在下面的命令中提供娃娃
的完整路径。
申请证书列表
当 Puppet 代理服务器上线时,如果一切都正确配置,他们将向 Puppet 主人提交证书签名请求,这些请求可以通过 Puppet cert list
命令进行审查。
列出所有请求,签名和未签名
要查看所有证书请求,签名和未签名,请使用--all
标志如下:
1sudo puppet cert list --all
在下面的输出中,host2.example.com
没有签名,而host1
和puppet
有:
1[secondary_label Output:]
2+ "host1.example.com" (SHA256) 51:D8:7A:EB:40:66:74:FD:0A:03:5D:35:AA:4D:B3:FA:35:99:C2:A8:C9:01:83:34:F6:16:60:BB:46:1F:33:3F
3 "host2.example.com" (SHA256) 3C:A9:96:3A:8D:24:5F:25:DB:FF:67:B5:22:B1:46:D9:89:F1:75:EC:BA:F2:D6:87:70:0C:59:97:11:11:01:E3
4+ "puppet.example.com" (SHA256) 12:32:47:18:D1:12:85:A6:EA:D4:51:9C:24:96:E2:8A:51:41:8D:EB:E8:7C:EB:47:94:B0:8B:16:16:51:6A:D1 (alt names: "DNS:puppet", "DNS:puppet.localdomain", "DNS:puppet.example.com")
未签名的请求列表
在 Puppet Server 能够与代理节点进行通信和控制之前,它必须签署该特定的代理节点的证书。
1sudo puppet cert list
这只会列出未签名的请求,输出将看起来像:
1[secondary_label Output:]
2 "host2.example.com" (SHA256) 9D:49:DE:46:1C:0F:40:19:9B:55:FC:97:69:E9:2B:C4:93:D8:A6:3C:B8:AB:CB:DD:E6:F5:A0:9C:37:C8:66:A0
缺少加符号(+
)表示这些证书尚未签署,如果没有未签署的请求,则将返回命令提示,无输出。
签署证书申请
签名具体请求
若要签署单个证书请求,请使用puppet cert sign
命令,并按证书请求显示一个或多个主机名。
1puppet cert sign host2.example.com
与下面的示例类似的输出表示已签署证书请求:
1[secondary_label Output:]
2Notice: Signed certificate request for host1.example.com
3Notice: Removing file Puppet::SSL::CertificateRequest host2.example.com at '/etc/puppetlabs/puppet/ssl/ca/requests/host1.example.com.pem'
签署所有请求
您可以通过添加--all
旗签署所有请求:
1sudo puppet cert sign --all
撤销证书
最终,您可能需要从 Puppet 删除主机或重建主机,然后将其添加回。
<$>[注]
注: 在撤销证书之前,请创建备份 /etc/puppetlabs/puppet/ssl/
目录:
1sudo cp -R /etc/puppetlabs/puppet/ssl/ /root/
美元
取消特定证书
您可以通过提供在证书中显示的一个或多个主机名称来撤销一个或多个特定证书:
1sudo puppet cert clean host1.example.com
在撤销证书后,您必须 重新启动娃娃主机以便撤销生效。
1sudo service puppetserver reload
下次娃娃代理
在代理节点上运行时,它会向娃娃主发送一个新的证书签名请求,该请求可以用娃娃证书符号
签名。
1[environment second]
2sudo puppet agent --test
取消多个证书
Puppet 不允许大量删除带有--all
旗的证书,但可以通过提供由一个空间分开的主机名称同时撤销多个证书:
1sudo puppet cert clean host1.example.com host2.example.com . . .
在撤销证书后,您必须 重新启动娃娃主才能使撤销生效。
1sudo service puppetserver reload
结论
本指南涵盖了在 Puppet 版本 4.x 中管理 Puppet 证书的一些常见命令。