在 Puppet 版本 5 中生成和签署证书

在 Puppet 版本 5 中生成和签署证书

我正在尝试在两台运行 Centos 7 的相同 Linux 机器上安装和配置 puppet 5.3.2(一台为主服务器,另一台为代理服务器)。我已成功在两台机器上从官方存储库安装了 puppet,并添加了以下内容。

主节点/etc/hosts

127.0.0.1                 <master hostname>
<master node ipaddress>   puppet, <master node hostname>
<agent node ipaddress>    <agent node hostname>

代理节点/etc/hosts

127.0.0.1                 <agent hostname>
<master node ipaddress>   puppet, <master node hostname>
<agent node ipaddress>    <agent node hostname>

主节点/etc/puppetlabs/puppet/puppet.conf

[master]
vardir = /opt/puppetlabs/server/data/puppetserver
logdir = /var/log/puppetlabs/puppetserver
rundir = /var/run/puppetlabs/puppetserver
pidfile = /var/run/puppetlabs/puppetserver/puppetserver.pid
codedir = /etc/puppetlabs/code
dns_alt_names = puppet, <master node hostname>
certname = puppet

代理节点/etc/puppetlabs/puppet/puppet.conf

server = puppet, <master node hostname>

puppet 服务器成功启动。但是,我仍然需要为主服务器和代理服务器生成并签署适当的证书。为此,首先,我确保 puppetserver 在 puppet 主节点上已停止,然后在 puppet 主节点上发出:

sudo /opt/puppetlabs/bin/puppet cert list -a

我看到了一个 SHA256 证书。

现在,我不知道该如何继续。任何建议都将不胜感激。

答案1

我能够让它工作。基本上,当 Puppet 服务器首次启动时,会生成证书,可以通过以下方式查看:

sudo /opt/puppetlabs/bin/puppet cert list -a

接下来在代理节点上,如果代理正在运行,请使用以下命令停止 Puppet 代理(可以通过以下方式找到)systemctl status puppet

systemctl stop puppet

在 Puppet 代理上创建需要由 Puppet Master 签名的证书。证书可以通过以下方式生成:

/opt/puppetlabs/bin/puppet agent -t

在主节点上,可以通过以下方式查看代理证书

/opt/puppetlabs/puppet cert list -a

现在应该签署代理证书,为此

/opt/puppetlabs/puppet cert sign <puppet agent hostname>

证书签名后,需要进行验证。然而,在验证之前,Puppet 代理应该已启动并运行。

systemctl start puppet
systemctl enable puppet
/opt/puppetlabs/bin/puppet agent --fingerprint #certificate verification

相关内容