【问题标题】:Kubernetes API proxy for HTTPS endpoints用于 HTTPS 端点的 Kubernetes API 代理
【发布时间】:2018-03-05 05:55:46
【问题描述】:

Kubernetes 提供一个 API 代理,允许通过例如:https://myhost.com/api/v1/proxy/namespaces/kube-system/services/kubernetes-dashboard/ 查询内部服务

这一切都很好,很好。但是,出于安全性和合规性原因,我们所有的服务都公开了一个 HTTPS 端点。尝试通过转到https://myhost/api/v1/proxy/namespaces/default/services/myhttpsservice:3000/ 来访问它们会导致

 Error: 'read tcp 172.20.122.129:48830->100.96.29.113:3000: read: connection reset by peer' 
Trying to reach: 'http://100.96.29.113:3000/'

因为端点,100.96.29.113:3000其实就是https。

有没有办法配置代理以将 SSL 应用于特定的服务端点?

(编辑:如果目前无法做到这一点,用于跟踪功能请求的相关 github 问题链接也是可以接受的答案,直到它成为可能)

【问题讨论】:

    标签: kubernetes kubernetes-security


    【解决方案1】:

    https://kubernetes.io/docs/tasks/access-application-cluster/access-cluster/#manually-constructing-apiserver-proxy-urls 中所述,(并在 slack 上指出),您可以通过在服务名称前加上 "https:" 来访问 HTTPS 后面的服务;

    使用上面的例子,正确的应该是:https://myhost/api/v1/proxy/namespaces/default/services/https:myhttpsservice:3000/

    【讨论】:

      猜你喜欢
      • 2018-06-24
      • 1970-01-01
      • 1970-01-01
      • 2021-03-22
      • 2022-01-05
      • 2016-07-02
      • 2021-12-30
      • 1970-01-01
      • 2016-05-06
      相关资源
      最近更新 更多