新しい Edge UI に対する TLS の構成

デフォルトでは、新しい Edge UI へのアクセスには、Edge UI ノードの IP アドレスまたは DNS 名とポート 3001 を介した HTTP を使用します。次に例を示します。

http://newue_IP:3001

別の方法として、TLS を使用して Edge UI にアクセスするよう構成することもできます。その場合は次の形式を使用します。

https://newue_IP:3001

TLS の要件

Edge UI では TLS v1.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

Edge UI へのアクセスに使用するプロトコル(「http」または「https」)を設定します。デフォルト値は「http」です。TLS を有効にする場合は、次のように「https」に設定します。


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 リクエストはロードバランサで終端し、ロードバランサから HTTP を使用してリクエストが Edge UI に転送されます。

TLS をロードバランサで終端させる場合でも、Edge UI は元のリクエストが TLS で届いたことを認識する必要があります。たとえば、一部の Cookie に Secure フラグを設定することでこれを知らせることができます。

MANAGEMENT_UI_SCHEME を「https」に設定する必要があります。「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. は省略します。Edge UI へのリクエストは HTTP で送られるため、これらのプロパティは無視されます。

MANAGEMENT_UI_TLS_OFFLOAD=n の場合は必須
MANAGEMENT_UI_PUBLIC_URIS

MANAGEMENT_UI_TLS_OFFLOAD=n の場合、Edge UI の URL を指定します。

このプロパティは、構成ファイル内の他のプロパティに基づいて設定します。次に例を示します。


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 は、(Edge UI ではなく)ロードバランサの IP アドレスまたは DNS 名を示します。
  • リクエストに対して使用するポート番号をロードバランサと New UE で同じにする必要があります(3001 など)MANAGEMENT_UI_PORT を使用して、ロードバランサと New UE のポート番号を指定します。

SHOEHORN_SCHEME

新しい Edge UI をインストールする前に、まず「shoehorn」と呼ばれる基本 Edge UI をインストールします。インストール構成ファイルでは、次のプロパティを使用して、基本 Edge UI へのアクセスに使用するプロトコル「http」を指定します。


SHOEHORN_SCHEME=http

基本 Edge UI は TLS をサポートしていないため、Edge UI で TLS を有効にする場合でも、このプロパティは引き続き「http」に設定しておく必要があります。

○(「http」に設定する)

TLS の構成

Edge UI に対する TLS アクセスを構成するには:

  1. TLS 証明書と TLS 鍵をパスフレーズなしの PEM ファイルとして生成します。次に例を示します。

    mykey.pem
        mycert.pem

    TLS 証明書と 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. 次のコマンドを実行し、shoehorn をセットアップして再起動します。

    /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. 次のコマンドを実行し、shoehorn をセットアップして再起動します。

    /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. 次のコマンドを実行し、shoehorn をセットアップして再起動します。

    /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 にログインできなくなった場合は、ブラウザのキャッシュをクリアしてログインを再試行してください。