為新的 Edge 體驗設定傳輸層安全標準 (TLS)

私有雲 v4.19.01 的邊緣

根據預設,您可以使用 New Edge 體驗節點和通訊埠 3001 的 IP 位址或 DNS 名稱,透過 HTTP 存取 New Edge 服務。例如:

http://newue_IP:3001

您也可以將 New Edge 服務的 TLS 存取權設為透過以下格式存取:

https://newue_IP:3001

TLS 需求

新版 Edge 服務僅支援傳輸層安全標準 (TLS) 1.2 版。如果在 New Edge 服務中啟用 TLS,使用者就必須使用與 TLS v1.2 相容的瀏覽器連線至 New Edge 服務。

TLS 設定屬性

執行下列指令,為 New Edge 服務設定傳輸層安全標準 (TLS):

/opt/apigee/apigee-service/bin/apigee-service edge-management-ui configure-ssl -f configFile

其中 configFile 是用於安裝 New Edge 體驗的設定檔。

執行這個指令之前,您必須先編輯設定檔,以設定控制 TLS 的必要屬性。下表說明用於為 New Edge 體驗設定 TLS 的屬性:

屬性 說明 必填與否
MANAGEMENT_UI_SCHEME

設定用來存取 New Edge 服務的通訊協定「http」或「https」。 預設值為「http」。請設為「https」以啟用 TLS:

MANAGEMENT_UI_SCHEME=https
MANAGEMENT_UI_TLS_OFFLOAD

如果設為「n」,表示傳送至 New Edge 服務的 TLS 要求會在 New Edge 服務終止。您必須設定 MANAGEMENT_UI_TLS_KEY_FILEMANAGEMENT_UI_TLS_CERT_FILE.

如果設為「y」,表示傳送至新 Edge 服務的 TLS 要求會在負載平衡器上終止,而負載平衡器接著會使用 HTTP 將要求轉送至 New Edge 體驗。

如果您在負載平衡器上終止 TLS,則新 Edge 體驗仍需要注意原始要求來自 TLS。舉例來說,有些 Cookie 設有安全標記。

您必須將 MANAGEMENT_UI_SCHEME 設為「https」,否則系統會忽略 MANAGEMENT_UI_TLS_OFFLOAD

MANAGEMENT_UI_SCHEME=https
MANAGEMENT_UI_TLS_OFFLOAD=y
MANAGEMENT_UI_TLS_KEY_FILE

MANAGEMENT_UI_TLS_CERT_FILE

如為 MANAGEMENT_UI_TLS_OFFLOAD=n,請指定傳輸層安全標準 (TLS) 金鑰和憑證檔案的絕對路徑。檔案格式必須採用不含通關密語的 PEM 檔案,並且擁有者為「apigee」使用者。

這些檔案的建議位置為:

/opt/apigee/customer/application/edge-management-ui

如果該目錄不存在,請建立該目錄。

如果為 MANAGEMENT_UI_TLS_OFFLOAD=y,則省略 MANAGEMENT_UI_TLS_KEY_FILEMANAGEMENT_UI_TLS_CERT_FILE.,因為向 New Edge 服務發出的要求是透過 HTTP 提出。

是,如果 MANAGEMENT_UI_TLS_OFFLOAD=n
MANAGEMENT_UI_PUBLIC_URIS

如為 MANAGEMENT_UI_TLS_OFFLOAD=n,請指定 New Edge 服務的網址。

依據設定檔中的其他屬性設定這個屬性。例如:

MANAGEMENT_UI_PUBLIC_URIS=$MANAGEMENT_UI_SCHEME://$MANAGEMENT_UI_IP:$MANAGEMENT_UI_PORT

在此情況下:

  • MANAGEMENT_UI_SCHEME 會指定通訊協定「http」或「https」,如上所述。
  • MANAGEMENT_UI_IP 會指定 New Edge 服務的 IP 位址或 DNS 名稱。
  • MANAGEMENT_UI_PORT 會指定 New Edge 服務使用的通訊埠。

如要進一步瞭解這些屬性,請參閱安裝新版 Edge 服務

如果 MANAGEMENT_UI_TLS_OFFLOAD=y

  • MANAGEMENT_UI_IP 會指定負載平衡器的 IP 位址或 DNS 名稱,而「不是」 New Edge 服務的 IP 位址或 DNS 名稱。
  • 負載平衡器和新的 UE 值「必須」針對要求使用相同的通訊埠編號,例如 3001。使用 MANAGEMENT_UI_PORT 指定負載平衡器和新的 UE 上的通訊埠編號。

SHOEHORN_SCHEME

安裝 New Edge 服務前,請先安裝名為 shoehorn 的基本 Edge UI。安裝設定檔會使用下列屬性指定用於存取基本 Edge UI 的通訊協定「http」:

SHOEHORN_SCHEME=http

基礎 Edge UI 不支援傳輸層安全標準 (TLS),因此即使您在 New Edge 服務中啟用傳輸層安全標準 (TLS),這個屬性仍必須設為「http」。

是,並設定為「http」

設定 TLS

如何設定新版 Edge 服務的傳輸層安全標準 (TLS) 存取權:

  1. 產生傳輸層安全標準 (TLS) 憑證和金鑰,做為無通關密語的 PEM 檔案。例如:

    mykey.pem
    mycert.pem

    您可以透過許多方式產生 TLS 憑證和金鑰,例如,您可以執行以下指令來產生未簽署的憑證和金鑰:

    openssl req -x509 -newkey rsa:4096 -keyout mykey.pem -out mycert.pem -days 365 -nodes -subj '/CN=localhost'
  2. 將金鑰和憑證檔案複製到 /opt/apigee/customer/application/edge-management-ui 目錄。如果該目錄不存在,請建立該目錄。
  3. 確認憑證和金鑰為「apigee」使用者擁有:

    chown apigee:apigee /opt/apigee/customer/application/edge-management-ui/*.pem
  4. 編輯用來安裝 New Edge 體驗的設定檔,設定下列 TLS 屬性

    # Set to https to enable TLS.
    MANAGEMENT_UI_SCHEME=https 
    # Do NOT terminate TLS on a load balancer.
    MANAGEMENT_UI_TLS_OFFLOAD=n
    
    # Specify the key and cert. 
    MANAGEMENT_UI_TLS_KEY_FILE=/opt/apigee/customer/application/edge-management-ui/mykey.pem
    MANAGEMENT_UI_TLS_CERT_FILE=/opt/apigee/customer/application/edge-management-ui/mycert.pem
    
    # Leave these properties set to the same values as when you installed the New Edge experience:
    MANAGEMENT_UI_PUBLIC_URIS=$MANAGEMENT_UI_SCHEME://$MANAGEMENT_UI_IP:$MANAGEMENT_UI_PORT
    SHOEHORN_SCHEME=http
  5. 執行下列指令來設定 TLS:

    /opt/apigee/apigee-service/bin/apigee-service edge-management-ui configure-ssl -f configFile

    其中 configFile 是設定檔的名稱。

    這個指令碼會重新啟動 New Edge 服務。

  6. 執行下列指令來設定並重新啟動 shoehorn:

    /opt/apigee/apigee-service/bin/apigee-service edge-ui setup -f configFile
    /opt/apigee/apigee-service/bin/apigee-service edge-ui restart

    重新啟動後,New Edge 服務支援透過 HTTPS 存取。啟用 TLS 後,如果無法登入 New Edge 服務,請清除瀏覽器快取,然後再次嘗試登入。

在負載平衡器上 TLS 終止時設定新 Edge 體驗

如果您的負載平衡器會將要求轉送至 New Edge 體驗,您可以選擇終止負載平衡器上的 TLS 連線,然後讓負載平衡器透過 HTTP 將要求轉送至 New Edge 體驗:

在負載平衡器上終止 TLS

系統支援這項設定,但您必須據此設定負載平衡器和 New Edge 體驗。

如要設定在負載平衡器中 TLS 終止時的新 Edge 體驗,請按照下列指示操作:

  1. 編輯用於安裝 New Edge 體驗的設定檔,設定下列傳輸層安全標準 (TLS) 屬性

    # Set to https to enable TLS
    MANAGEMENT_UI_SCHEME=https
    # Terminate TLS on a load balancer
    MANAGEMENT_UI_TLS_OFFLOAD=y
    # Set to the IP address or DNS name of the load balancer.
    MANAGEMENT_UI_IP=LB_IP_DNS
    # Set to the port number for the load balancer and New Edge experience.
    # The load balancer and the New Edge experience must use the same port number.
    MANAGEMENT_UI_IP=3001
    
    # Leave these properties set to the same values as when you installed the New Edge experience:
    MANAGEMENT_UI_PUBLIC_URIS=$MANAGEMENT_UI_SCHEME://$MANAGEMENT_UI_IP:$MANAGEMENT_UI_PORT
    SHOEHORN_SCHEME=http
    

    如果您設定了 MANAGEMENT_UI_TLS_OFFLOAD=y,系統會忽略 MANAGEMENT_UI_TLS_KEY_FILEMANAGEMENT_UI_TLS_CERT_FILE.,因為向 New Edge 體驗發出的要求是透過 HTTP 提出。

  2. 執行下列指令來設定 TLS:

    /opt/apigee/apigee-service/bin/apigee-service edge-management-ui configure-ssl -f configFile

    其中 configFile 是設定檔的名稱。

    這個指令碼會重新啟動 New Edge 服務。

  3. 執行下列指令來設定並重新啟動 shoehorn:

    /opt/apigee/apigee-service/bin/apigee-service edge-ui setup -f configFile
    /opt/apigee/apigee-service/bin/apigee-service edge-ui restart

    重新啟動後,New Edge 服務支援透過 HTTPS 存取。啟用 TLS 後,如果無法登入 New Edge 服務,請清除瀏覽器快取,然後再次嘗試登入。

在新版 Edge 服務中停用 TLS

如何在新版 Edge 服務中停用 TLS:

  1. 編輯用於安裝 New Edge 體驗的設定檔,設定下列傳輸層安全標準 (TLS) 屬性

    # Set to http to disable TLS.
    MANAGEMENT_UI_SCHEME=http
    
    # Only if you had terminated TLS on a load balancer,
    # reset to the IP address or DNS name of the New Edge experience.
    MANAGEMENT_UI_IP=newue_IP_DNS
    
  2. 執行下列指令來停用 TLS:

    /opt/apigee/apigee-service/bin/apigee-service edge-management-ui configure-ssl -f configFile

    其中 configFile 是設定檔的名稱。

    這個指令碼會重新啟動 New Edge 服務。

  3. 執行下列指令來設定並重新啟動 shoehorn:

    /opt/apigee/apigee-service/bin/apigee-service edge-ui setup -f configFile
    /opt/apigee/apigee-service/bin/apigee-service edge-ui restart

    你現在可以透過 HTTP 使用 New Edge 服務。 如果在停用 TLS 後無法登入新版 Edge 服務,請清除瀏覽器快取,然後再次嘗試登入。