通过 SSL 在 Puppet-Dashboard 中报告自动注册

通过 SSL 在 Puppet-Dashboard 中报告自动注册

使用软件版本 puppet-server 0.25.5 和 puppet-dashboard 1.0.4,我拥有一个功能齐全的 puppet-dashboard 实例,并具有新签到报告的自动注册功能。但是,在 vhost 上启用 SSL 后,报告自动注册不再发生。我已经验证,从用户的角度来看,该站点在其他方面均正常运行。

我已经更改了文件中的 PORT 定义puppet_dashboard.rb,但没有收到任何显示连接失败等的日志。

有人能提供关于如何最好地调试或修复这个问题的指导吗?

答案1

这显然不是设置和配置的问题,而是设计问题。底层报告注册不支持 SSL。经过一些更有创意的谷歌搜索,我发现了这一点粘贴贴使用下面复制的相关代码。process在您的 中将定义替换为以下内容puppet_dashboard.rb

def process
  link = Net::HTTP.new(HOST, PORT)
  link.use_ssl = true
  link.verify_mode = OpenSSL::SSL::VERIFY_NONE
  link.start do |conn|
    conn.post "/reports", "report=" + CGI.escape(self.to_yaml)
  end
end

答案2

如果您在乘客下运行仪表板,您可以在虚拟主机中添加一个未启用 SSL 的部分,并将其专门用于报告。

这也解决了仪表板的 Web 服务器中启用 HTTPAuth 的类似问题,而仪表板本身也不支持该问题。

相关内容