puppet 未签署证书或未收到新请求

puppet 未签署证书或未收到新请求

我不确定如何表述这个问题,所以问题是这样的:

我使用 v2.6.16 全新安装了 puppet-server 和 puppet,并按照以下步骤在 2 个节点(分别为 puppet 和 puppet-agent)上运行http://docs.puppetlabs.com/guides/installation.html适用于Linux系统(CentOS)。

在 puppet[-server] 框上,我发出puppetca -la并返回:

+ puppet (DB:50:1B:37:47:78:DA:F2:69:28:B7:E2:22:1B:C5:28) (alt names: DNS:puppet, DNS:puppet.abc.com)

(请注意,没有列出 puppet-agent)...此外,没有列出 puppet 实例puppet cert list

当用 签名时puppetca --sign puppet,我得到:

err: Could not call sign: Could not find certificate request for puppet

相同puppetca --sign puppet.abc.com

private_keys 和 certs 目录中有一个 puppet.pem。certificate_requests 目录为空。自动签名已关闭。

我很乐意提供任何额外的信息并感谢任何帮助。

两台机器上的 puppet.conf 如下,无注释:

[main]
  logdir = /var/log/puppet
  rundir = /var/run/puppet
  vardir = /var/lib/puppet
  factpath = $vardir/lib/facter
  ssldir = $vardir/ssl
  server = puppet.abc.com
  dns_alt_names = puppet, puppet.abc.com
  pluginsync = true

[agent]
  classfile = $vardir/classes.txt
  localconfig = $vardir/localconfig

[master]
  templatedir = var/lib/puppet/templates

根据评论进行编辑

  • 主人正在运行
  • 代理可以通过主机名联系主服务器
  • 代理无法远程登录到主服务器上的 8140 - 主服务器正在监听 0.0.0.0:8140,并且 iptables 和 selinux 已关闭
  • 5 月 14 日 13:40:13 puppet-agent puppet-agent[25920]: (/File[/var/lib/puppet/lib]) 无法使用“eval_generate”生成其他资源:SSL_connect 返回 = 1 errno = 0 state = SSLv3 读取服务器证书 B:证书验证失败 5 月 14 日 13:40:13 puppet-agent puppet-agent[25920]: (/File[/var/lib/puppet/lib]) 无法评估:SSL_connect 返回 = 1 errno = 0 state = SSLv3 读取服务器证书 B:证书验证失败 无法检索 puppet://puppet.abc.com/plugins 的文件元数据:SSL_connect 返回 = 1 errno = 0 state = SSLv3 读取服务器证书 B:证书验证失败 5 月 14 日 13:40:14 puppet-agent puppet-agent[25920]: 无法从远程服务器检索目录:SSL_connect 返回 = 1 errno = 0 state = SSLv3 读取服务器证书 B:证书验证失败
  • puppet agent--test 产生:dnsdomainname:未知主机信息:检索插件错误:/File[/var/lib/puppet/lib]:无法使用“eval_generate”生成其他资源:SSL_connect 返回=1 errno=0 state=SSLv3 读取服务器证书 B:证书验证失败错误:/File[/var/lib/puppet/lib]:无法评估:SSL_connect 返回=1 errno=0 state=SSLv3 读取服务器证书 B:证书验证失败无法检索 puppet://puppet.abc.com/plugins 的文件元数据:SSL_connect 返回=1 errno=0 state=SSLv3 读取服务器证书 B:证书验证失败 dnsdomainname:未知主机错误:无法从远程服务器检索目录:SSL_connect 返回=1 errno=0 state=SSLv3 读取服务器证书 B:证书验证失败警告:未在失败的目录上使用缓存错误:无法检索目录;跳过运行 5月14日 13:40:14 puppet-agent puppet-agent[25920]: 使用缓存目录
  • netstat 生成处于 LISTEN 状态的 ruby​​/puppet 和处于 TIME_WAIT 状态的代理

答案1

任何开放的签名请求都应列在puppet cert list主目录中。如果它们没有出现在那里,那么尝试签名是没有用的。一旦签名,它们就会从列表中消失,只会显示在 中puppet cert list --all

看来您的主人没有收到来自代理的签名请求,因为您的列表是空的。有很多事情可能出错。让我们从这些开始:

  • 主人跑步了吗?
  • 主机名“puppet”或“puppet.abc.com”是否从代理解析?
  • 主服务器上的 TCP 端口 8140 是否可以从代理服务器访问(尝试telnet puppet 8140:)?
  • 代理上的系统日志说了什么?
  • 尝试puppet agent --test代理,它将尝试连接到主服务器并停留在前台以显示输出。

相关内容