0

我已经使用 OpenShift Origin 创建了一个带有通往它的路由的应用程序。现在我想使用 TLS 使该路由安全:我已经创建了带有边缘和直通的路由。但现在我想创建一个使用 Reencrypt 的路由。

因此我需要在我的路线中指定一些证书:

apiVersion: v1
kind: Route
metadata:
  name: route-pt-secured
spec:
  host: www.example.com
  to:
    kind: Service
    name: service-name
  tls:
    termination: reencrypt        1
    key: [as in edge termination]
    certificate: [as in edge termination]
    caCertificate: [as in edge termination]
    destinationCaCertificate: |-  2
      -----BEGIN CERTIFICATE-----
      [...]
      -----END CERTIFICATE-----

它与边缘终止非常相似。但我不必描述一个destinationCACertificate. 我使用 keytool 创建自己的证书和密钥并转换为 pk12。之后,我可以看到我的证书和密钥 ( openssl pkcs12) 并将它们复制到我的路由中。

现在我的问题是我真的不知道destinationCACertificate 是什么?我是否必须以与创建普通密钥/证书相同的方式创建它,还是必须在其他地方读取/创建它?

4

1 回答 1

0

destinationCACertificate 是(可选)CA 证书,它签署了路由指向的 TLS 端点(pod)的服务证书。作为 pod 的端点很可能是私有 IP (10.xxx),并且大多数 CA 不会对私有 IP 范围内的 IP 进行签名。此外,Pod 经常被创建和删除(获取不同的 IP 地址),因此很难创建具有 Pod IP 的服务证书。

destinationCACertificate 实际上是路由器和 pod 之间的共享机密 - 路由器希望destinationCACertificate 匹配服务器证书,并且只有在您(用户)设置路由以匹配 pod(s) 服务器证书时才有可能.

于 2015-12-20T16:58:58.860 回答