設定路由器和訊息處理器之間的傳輸層安全標準 (TLS)

Private Cloud v. 4.17.01 版本

根據預設,路由器和訊息處理器之間的 TLS 會停用。

請按照下列程序,在路由器和訊息處理器之間啟用 TLS 加密:

  1. 確認路由器可存取訊息處理器上的 8082 連接埠。
  2. 產生包含 TLS 認證和私密金鑰的 KeyStore JKS 檔案。詳情請參閱「為 Edge On Premises 設定 TLS/SSL」一文。
  3. 將 KeyStore JKS 檔案複製到 Message Processor 伺服器上的目錄,例如 /opt/apigee/customer/application
  4. 變更 JKS 檔案的權限和擁有權:
    > chown apigee:apigee /opt/apigee/customer/application/keystore.jks
    > chmod 600 /opt/apigee/customer/application/keystore.jks


    其中 keystore.jks 是金鑰庫檔案的名稱。
  5. 編輯 /opt/apigee/customer/application/message-processor.properties 檔案。 如果檔案不存在,請建立檔案。
  6. message-processor.properties 檔案中設定下列屬性:
    conf_message-processor-communication_local.http.ssl=true
    conf/message-processor-communication.properties+local.http.port=8443
    conf/message-processor-communication.properties+local.http.ssl.keystore.type=jks
    conf/message-processor-communication.properties+local.http.ssl.keystore.path=/opt/apigee/customer/application/keyStore.jks
    conf/message-processor-communication.properties+local.http.ssl.keyalias=apigee-devtest
    # 在下方輸入經過模糊處理的金鑰庫密碼。
    conf/message-processor-communication.properties+local.http.ssl.keystore.password=OBF:obsPword


    其中 keyStore.jks 是您的金鑰庫檔案,而 obsPword 是經過模糊處理的金鑰庫和金鑰別名密碼。如要瞭解如何產生經過模糊處理的密碼,請參閱「為 Edge On Premises 設定 TLS/SSL」一文。
  7. 請確認 message-processor.properties 檔案是由「apigee」使用者擁有:
    > chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
  8. 停止訊息處理器和路由器:
    /opt/apigee/apigee-service/bin/apigee-service Edge-message-processor stop
    /opt/apigee/apigee-service/bin/apigee-service Edge-router stop
  9. 在路由器上刪除 /opt/nginx/conf.d 中的所有檔案:
    > rm -f /opt/nginx/conf.d/*
  10. 啟動訊息處理器和路由器:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor start
    /opt/apigee/apigee-service/bin/apigee-service edge-router start
  11. 對其他訊息處理器重複執行以上步驟。

在路由器和訊息處理器之間啟用 TLS 後,訊息處理器記錄檔會包含下列 INFO 訊息:

MessageProcessorHttpSkeletonFactory.configureSSL() : Instantiating Keystore of type: jks

這項 INFO 陳述式可確認路由器和訊息處理器之間的 TLS 運作正常。

下表列出 message-processor.properties 中的所有可用屬性:

資源

說明

conf_message-processor-communication_local.http.host=<localhost or IP address>

選用設定。路由器連線的監聽主機名稱。這會覆寫註冊時設定的主機名稱。

conf/message-processor-communication.properties+local.http.port=8998

選用設定。要監聽路由器連線的通訊埠。預設值為 8998。

conf_message-processor-communication_local.http.ssl=<false | true>

將此值設為 true 可啟用 TLS/SSL。預設值為 False 啟用 TLS/SSL 時,您必須設定 local.http.ssl.keystore.pathlocal.http.ssl.keyalias

conf/message-processor-communication.properties+local.http.ssl.keystore.path=

本機檔案系統的金鑰庫路徑 (JKS 或 PKCS12)。當 local.http.ssl=true 時,此屬性為必填。

conf/message-processor-communication.properties+local.http.ssl.keyalias=

用於 TLS/SSL 連線的 KeyStore 金鑰別名。如果 local.http.ssl=true,則為必要值。

conf/message-processor-communication.properties+local.http.ssl.keyalias.password=

用於在 KeyStore 中加密金鑰的密碼。請使用經過模糊處理的密碼,格式如下:OBF:xxxxxxxxxx

conf/message-processor-communication.properties+local.http.ssl.keystore.type=jks

KeyStore 類型。目前僅支援 JKS 和 PKCS12。預設值為 JKS。

conf/message-processor-communication.properties+local.http.ssl.keystore.password=

選用設定。經過模糊處理的 KeyStore 密碼。請使用經過模糊處理的密碼,格式如下:OBF:xxxxxxxxxx

conf_message-processor-communication_local.http.ssl.ciphers=<cipher1,cipher2>

選用設定。設定後,系統只會允許使用列出的加密編碼。如果省略,系統會使用 JDK 支援的所有密碼編譯器。