簡體   English   中英

從 secret 創建 OpenShift TLS 路由

[英]Create OpenShift TLS route from secret

我想知道(以及如何去做),從一個包含我的證書和密鑰(或 JAVA 密鑰庫)或 2 個秘密(1 個帶有證書,另一個帶有密鑰)的秘密在 OpenShift 中創建一個安全的(tls)路由這樣我就不需要直接將它們都寫在“route.yaml”文件中,而只需引用它們......

更新:

看起來這是不可能的。 除非我對 pod 進行直通...請參閱此處 ---> https://access.redhat.com/solutions/1582583

不過,我不希望它成為最終答案,因為我認為這應該得到支持。

有人可以告訴我嗎? 請 !

不幸的是,據我所知,它無法在route中將證書配置為secret 如果您只想使用yaml文件以外的其他方式創建route對象,則可以使用以下 CLI 配置route

oc create route edge --service=frontend \
    --cert=${MASTER_CONFIG_DIR}/ca.crt \
    --key=${MASTER_CONFIG_DIR}/ca.key \
    --ca-cert=${MASTER_CONFIG_DIR}/ca.crt \
    --hostname=www.example.com

希望對你有幫助:^)

根據https://github.com/openshift/origin/issues/2162,此功能不會很快出現在 OpenShift 中。

我的 RFE 被 RedHat 關閉了,因為它應該是 OpenShift4 的要求。 同時,我開始使用 tls secrets 並直接在我的容器中管理 TLS 終止,而不是在路由上。

它是這樣的。 TLS 有一個秘密類型

oc create secret tls mytlsSecret --cert= --key=

希望這有幫助!

可以在不共享證書和私鑰秘密的情況下使用 TLS 處理路由模板。

  1. 將 CA 證書、服務器證書和服務器私鑰存儲在 TLS 秘密中
  2. oc 獲取 tls.key/tls.crt/ca.crt 文件的秘密
  3. 在路由模板中設置:
  • TLS_PRIVATE_KEY/TLS_CERTIFICATE/CA_CERTIFICATE 參數
  • tls.key: ${TLS_PRIVATE_KEY}, tls.certificate: ${TLS_CERTIFICATE}, tls.caCertificate: ${CA_CERTIFICATE}
  1. 使用 -p "TLS_PRIVATE_KEY=$(cat tls.key)" -p "TLS_CERTIFICATE=$(cat tls.crt)" -p "CA_CERTIFICATE=$(cat ca.crt)" 的 oc 流程模板

多行參數的想法來自: https : //github.com/openshift/origin/issues/10687

Cert Utils Operator的功能之一是能夠填充路由證書

假設您有一條路線myroute和一條秘密mysecret

$ oc annotate route/myroute cert-utils-operator.redhat-cop.io/certs-from-secret=mysecret

然后,運營商將負責使用來自秘密的證書/密鑰/ca 證書更新路由。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM