我已经成功地安装了一个API,其通过上游到多个目标(应用服务器)的负载平衡杠网关。
现在,我有我的应用程序服务器的自签名证书,SSL握手应香港与目标之间的失败。我推断,香港不会验证上游证书。
一些研究之后,我已经找到了nginx的,会做正确ssl_proxy on;
配置。
我想找到的,在openresty等效,以验证上行信SSL证书。
该解决方案是修改nginx的香港配置激活ssl_proxy
但蹩脚与同一实例不同的目标。
我本来期望你做它周围的其他方法:让你的后端服务验证香港有一个特定的SSL证书时接触到您的服务,从而使效果只有香港可以连接到服务,并在后果,任何API客户端必须通过香港去连接。
我们这样做,对于wicked.haufe.io,与香港0.11.0,你可以在这里找到合适的nginx_conf.lua
文件:https://github.com/apim-haufe-io/wicked.kong/blob/master/templates/nginx_kong.lua
这里感兴趣的是:
proxy_ssl_certificate /root/proxy-cert.pem;
proxy_ssl_certificate_key /root/proxy-key.pem;
指定哪个nginx的使用做代理调用后端服务的证书和密钥。这是由香港重视。
通过检查,我们也为wicked.haufe.io的香港码头工人的形象,你应该是什么能够适应自己的需求;另一个有趣的一点是startup.sh
,其中证书/密钥从环境变量中提取并添加到/root/proxy-...pem
文件。
请注意,在香港的配置client_ssl评论:
If 'client_ssl' is enabled, the absolute path
to the client SSL certificate for the
'proxy_ssl_certificate directive. Note that
this value is statically defined on the node,
and currently cannot be configured on a
per-API basis.
它是目前不可能。
我设法让这通过设置以下的环境变量与香港0.14.x工作:KONG_NGINX_HTTP_PROXY_SSL_VERIFY:“上” KONG_NGINX_HTTP_PROXY_SSL_TRUSTED_CERTIFICATE:(调整后为指向您的自定义CA证书文件)“/mnt/certs/ca.crt”
这里使用了“KONG_NGINX_HTTP_”前缀任意设置nginx的“HTTP”设置。
这似乎并没有与香港1.0.x的工作,虽然。目前试图找到一个解决方案...