道歉这个问题是Chef和Apache-httpd的混合,但最终我认为这是一个Apache-httpd配置问题。
我有一个Chef客户端/节点,很高兴地点击带有SSL的Chef服务器。
Chef客户端/节点 - /etc/chef/client.rb
chef_server_url 'https://chefserverhostname/organizations/myOrg'
ssl_verify_mode :verify_peer
我正在尝试将代理放在Chef服务器前面,以便我可以根据需要重新指向道路。 Apache-httpd安装正常(与Chef Server在同一个盒子上),所有防火墙和iptables都与我的下面配置一致。
Chef服务器 - /etc/httpd/conf/httpd.conf
Listen 8443
<VirtualHost *:8443>
ServerAdmin me@email
ServerName chefserverhostname
ServerAlias CDS-PROXY
ProxyPass / https://chefserverhostname:443/
ProxyPassReverse / https://chefserverhostname:443/
RewriteEngine On
</VirtualHost>
我将Chef客户端/节点的client.rb
重新配置为指向https://chefserverhostname:8443/organizations/myOrg
,并希望让请求通过代理。 ChefServer / nginx正在监听443,我假设它正在处理SSL解密,而8443只是'传递'。但是,当我启动我的Chef客户端/节点时,我收到一条SSL错误消息:
ERROR: SSL Validation failure connecting to host: chefserverhostname - SSL_connect returned=1 errno=0 state=SSLv2/v3 read server hello A: unknown protocol
答案 0 :(得分:0)
您正在使用HTTPS,但您的vhost没有任何配置来启用mod_ssl或其他TLS选项。因此,您应该使用http://hostname:8443
,但不推荐非常。
Chef Server是一个内心的设备,这种额外的代理层是可能的,但不是如何操作的。你应该使用默认设置,它已经包含了Erchef和朋友的前端nginx代理。
答案 1 :(得分:0)
您可以检查https://github.com/chef-cookbooks/httpd此配方并正确配置apache ssl和其他模块。
根据您当前的设置,对我来说也不能在主厨服务器上删除SSL连接。
由于您的计算机上有nginx,您可以在那里扩展配置以支持反向代理。稍后,如果您从此计算机中删除chefserver / nginx并且您只想离开代理,请安装新的nginx并应用相同的conf进行代理配置。
我宁愿从你的设置中删除apache。