為新的 Edge UI 設定 TLS

根據預設,您存取 新版 Edge UI 方法是使用 Edge UI 節點的 IP 位址或 DNS 名稱以及通訊埠 3001。例如:

http://newue_IP:3001

或者,您也可以設定傳輸層安全標準 (TLS) 對 Edge UI 的存取權, 請使用以下格式存取:

https://newue_IP:3001

TLS 需求

Edge UI 僅支援 TLS 1.2 版。如果您在 Edge UI 上啟用 TLS, 使用者必須使用與 TLS v1.2 相容的瀏覽器來連線至 Edge UI。

TLS 設定屬性

執行下列指令,為 Edge UI 設定 TLS:

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

其中 configFile 是用於安裝 Edge UI。

執行這個指令之前,您必須先編輯設定檔 控管 TLS 的必要屬性下表說明 您用於設定 Edge UI TLS 的屬性:

屬性 說明 必填與否
MANAGEMENT_UI_SCHEME

設定通訊協定「http」或「https」以便存取 Edge UI。 預設值為「http」。設定為「https」如何啟用 TLS:

MANAGEMENT_UI_SCHEME=https
MANAGEMENT_UI_TLS_OFFLOAD

如果設為「n」,表示傳送至 Edge UI 的 TLS 要求會終止 在 Edge UI 中運作您必須設定 MANAGEMENT_UI_TLS_KEY_FILEMANAGEMENT_UI_TLS_CERT_FILE.

如果為「y」,則會指定終止對 Edge UI 的 TLS 要求 負載平衡器,再將要求轉送至 Edge UI 存取 API

如果您在負載平衡器上終止 TLS,Edge UI 仍需 請注意,原始要求是透過傳輸層安全標準 (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 檔案格式的 PEM 檔案, 沒有通關密語,且擁有者必須是「apigee」內容。

這些檔案的建議位置為:

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

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

如果值為 MANAGEMENT_UI_TLS_OFFLOAD=y,則省略 MANAGEMENT_UI_TLS_KEY_FILEMANAGEMENT_UI_TLS_CERT_FILE. 它們會被忽略,因為對 Edge UI 是透過 HTTP 運作。

MANAGEMENT_UI_TLS_OFFLOAD=n
MANAGEMENT_UI_PUBLIC_URIS

如果設為 MANAGEMENT_UI_TLS_OFFLOAD=n,則指定 Edge UI 的網址,

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

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

在此情況下:

  • MANAGEMENT_UI_SCHEME 會指定通訊協定「http」「https」
  • MANAGEMENT_UI_IP 會指定 Edge UI 的 IP 位址或 DNS 名稱。
  • MANAGEMENT_UI_PORT 會指定 Edge UI 使用的通訊埠。

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

如果為 MANAGEMENT_UI_TLS_OFFLOAD=y

  • MANAGEMENT_UI_IP 會指定負載平衡器的 IP 位址或 DNS 名稱。 「不是」 Edge UI。
  • 負載平衡器和新 UE 必須使用相同的通訊埠號碼來處理要求,例如 3001。 使用 MANAGEMENT_UI_PORT 指定負載平衡器和新 UE 的通訊埠編號。

MANAGEMENT_UI_TLS_ALLOWED_CIPHERS

將可用的 TLS 加密清單定義為以半形逗號分隔或以空格分隔的字串。

以半形逗號分隔的字串:

MANAGEMENT_UI_TLS_ALLOWED_CIPHERS=TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256

以雙引號括住的字串 (以空格分隔):

MANAGEMENT_UI_TLS_ALLOWED_CIPHERS="TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256"

SHOEHORN_SCHEME

安裝新版 Edge UI 之前, 首先安裝名為「shoehorn」的基本 Edge UI。安裝設定檔會使用 下列屬性可指定用於存取基本邊緣 UI 的通訊協定「http」:

SHOEHORN_SCHEME=http

基本 Edge UI 不支援 TLS,因此即使您在 Edge UI 上啟用 TLS, 此屬性仍必須設為「http」。

是,設定為「http」

設定 TLS

如何設定 TLS 對 Edge UI 的存取權:

  1. 以不使用通關密語的 PEM 檔案的方式產生 TLS 憑證和金鑰。例如:

    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. 編輯用於安裝 Edge UI 的設定檔 設定下列 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 Edge UI:
    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 是設定檔的名稱。

    指令碼會重新啟動 Edge UI。

  6. 執行下列指令,設定並重新啟動鞋帶:

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

    重新啟動後,Edge UI 即可支援透過 HTTPS 存取。 如果您在啟用 TLS 後無法登入 Edge UI,請清除 瀏覽器快取,然後嘗試重新登入。

在 TLS 終止負載平衡器時設定 Edge UI

如果負載平衡器將要求轉送至 Edge UI,您可以 終止負載平衡器的 TLS 連線 負載平衡器透過 HTTP 將要求轉送至 Edge UI:

終止負載平衡器中的 TLS

支援這項設定 但您必須據此設定負載平衡器和 Edge UI

如要在 TLS 終止負載平衡器時設定 Edge UI:

  1. 編輯用於安裝 Edge UI 的設定檔 設定下列 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 Edge UI.
    # The load balancer and the Edge UI must use the same port number.
    MANAGEMENT_UI_IP=3001
    
    # Leave these properties set to the same values as when you installed the Edge UI:
    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. 會遭到忽略,因為向 Edge UI 的要求是透過 HTTP 傳送。

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

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

    其中 configFile 是設定檔的名稱。

    指令碼會重新啟動 Edge UI。

  3. 執行下列指令,設定並重新啟動鞋帶:

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

    重新啟動後,Edge UI 即可支援透過 HTTPS 存取。 如果您在啟用 TLS 後無法登入 Edge UI,請清除 瀏覽器快取,然後嘗試重新登入。

在 Edge UI 上停用 TLS

如何在 Edge UI 上停用 TLS:

  1. 編輯用於安裝 Edge UI 的設定檔 下列傳輸層安全標準 (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 Edge UI.
    MANAGEMENT_UI_IP=newue_IP_DNS
    
  2. 執行下列指令來停用 TLS:

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

    其中 configFile 是設定檔的名稱。

    指令碼會重新啟動 Edge UI。

  3. 執行下列指令,設定並重新啟動鞋帶:

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

    您現在可以透過 HTTP 存取 Edge UI。 如果您在停用 TLS 後無法登入 Edge UI,請清除 瀏覽器快取,然後嘗試重新登入。