Management API の TLS の構成

デフォルトでは、管理 API の TLS は無効になっており、Edge 管理 API には Management Server ノードの IP アドレスとポート 8080 を使用した HTTP。例:

http://ms_IP:8080

または、Management API への TLS アクセスを構成して、 次のフォームを使用します。

https://ms_IP:8443

この例では、ポート 8443 を使用するように TLS アクセスを構成します。ただし、このポート番号は 他のポート値を使用するように Management Server を構成できます。唯一の 要件は、指定したポートでトラフィックを許可することです。

Management API との間のトラフィックを暗号化するには、 /opt/apigee/customer/application/management-server.properties 表示されます。

TLS 構成に加えて、パスワード検証(パスワードの長さ)を制御することも 強度と強度など)management-server.properties ファイルを修正します。

TLS ポートが開いていることを確認する

このセクションの手順では、Management Server でポート 8443 を使用するように TLS を構成します。 使用するポートにかかわらず、Google Cloud 管理マシンでそのポートが できます。たとえば、次のコマンドを使用して開くことができます。

iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 8443 -j ACCEPT --verbose

TLS の構成

/opt/apigee/customer/application/management-server.properties を編集する ファイルを使用して、管理 API との間のトラフィックでの TLS の使用を制御します。このファイルが存在しない場合は、 作成します。

Management API への TLS アクセスを構成するには:

  1. TLS 証明書と秘密鍵を含むキーストア JKS ファイルを生成します。詳細 オンプレミスの Edge での TLS/SSL の構成をご覧ください。
  2. キーストア JKS ファイルを Management Server ノードのディレクトリ( /opt/apigee/customer/application として指定します。
  3. JKS ファイルの所有権を「apigee」に変更します。user:
    chown apigee:apigee keystore.jks

    ここで、keystore.jks はキーストア ファイルの名前です。

  4. /opt/apigee/customer/application/management-server.propertiesを編集 次のプロパティを設定します。このファイルが存在しない場合は作成します。
    conf_webserver_ssl.enabled=true
    # Leave conf_webserver_http.turn.off set to false
    # because many Edge internal calls use HTTP.
    conf_webserver_http.turn.off=false
    conf_webserver_ssl.port=8443
    conf_webserver_keystore.path=/opt/apigee/customer/application/keystore.jks
    # Enter the obfuscated keystore password below.
    conf_webserver_keystore.password=OBF:obfuscatedPassword

    ここで、keyStore.jks はキーストア ファイルです。 obfuscatedPassword は、難読化されたキーストアのパスワードです。詳しくは、 オンプレミスの Edge での TLS/SSL の構成 難読化されたパスワードの生成に関する情報が記載されています。

  5. 次のコマンドを使用して Edge Management Server を再起動します。
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart

管理 API で TLS 経由のアクセスがサポートされるようになりました。

TLS を使用してアクセスするように Edge UI を構成する Edge API

上記の手順では、Apigee は conf_webserver_http.turn.off=falseします。 Edge UI では、引き続き HTTP 経由で Edge API を呼び出せます。

HTTPS 経由でのみこれらの呼び出しを行うように Edge UI を構成するには、次の操作を行います。

  1. 上記のように、管理 API への TLS アクセスを構成します。
  2. Management API で TLS が機能していることを確認したら、 /opt/apigee/customer/application/management-server.properties~ 次のプロパティを設定します。
    conf_webserver_http.turn.off=true
  3. 次のコマンドを実行して Edge Management Server を再起動します。
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart 
  4. /opt/apigee/customer/application/ui.propertiesを編集 Edge UI の次のプロパティを設定します。
    conf_apigee_apigee.mgmt.baseurl="https://FQ_domain_name:port/v1"

    ここで、FQ_domain_name は証明書に基づく完全なドメイン名です。 Management Server のアドレスです。port は、先ほど指定したポートです。 conf_webserver_ssl.port

    ui.properties が存在しない場合は作成します。

  5. 自己署名証明書を使用した場合のみ(本番環境では推奨されません) ))を使用して、上記の Management API への TLS アクセスを構成するときに、 次のプロパティを ui.properties に設定します。
    conf/application.conf+play.ws.ssl.loose.acceptAnyCertificate=true

    そうしないと、Edge UI で自己署名証明書が拒否されます。

  6. 次のコマンドを実行して、Edge UI を再起動します。
    /opt/apigee/apigee-service/bin/apigee-service edge-ui restart

Management Server の TLS プロパティ

次の表に、Google Cloud コンソールで設定できる TLS/SSL プロパティ management-server.properties:

プロパティ 説明

conf_webserver_http.port=8080

デフォルトは 8,080 です。

conf_webserver_ssl.enabled=false

TLS / SSL を有効または無効にする。TLS/SSL が有効(true)の場合、ssl.port も設定する必要があります。 keystore.path プロパティを置き換えます。

conf_webserver_http.turn.off=true

https に加えて HTTP を有効または無効にする。HTTPS のみを使用する場合は、 デフォルト値を true に設定します。

conf_webserver_ssl.port=8443

TLS/SSL ポート。

TLS/SSL が有効な場合は必須です(conf_webserver_ssl.enabled=true)。

conf_webserver_keystore.path=path

キーストア ファイルのパス。

TLS/SSL が有効な場合は必須です(conf_webserver_ssl.enabled=true)。

conf_webserver_keystore.password=password

OBF:xxxxxxxxxx という形式の難読化されたパスワードを使用してください

conf_webserver_cert.alias=alias

キーストア証明書エイリアス(省略可)

conf_webserver_keymanager.password=password

キー マネージャーにパスワードがある場合は、難読化されたバージョンのパスワードを 形式:

OBF:xxxxxxxxxx

conf_webserver_trust.all=[false | true]

conf_webserver_trust.store.path=path

conf_webserver_trust.store.password=password

トラストストアの設定を構成します。すべてを承認するかどうかを決定します TLS/SSL 証明書(非標準証明書など)デフォルトは false。パスを入力する 難読化されたトラストストアのパスワードを次の形式で入力します。

OBF:xxxxxxxxxx

conf_http_HTTPTransport.ssl.cipher.suites.blacklist=CIPHER_SUITE_1, CIPHER_SUITE_2

conf_http_HTTPTransport.ssl.cipher.suites.whitelist=

追加または除外する暗号スイートを指定します。たとえば 検出する場合は、ここで除外できます。複数の暗号を分離する カンマで区切ります。

ブラックリストから削除した暗号は、含まれるすべての暗号よりも優先されます 拒否されます。

注: デフォルトでは、ブラックリストまたはホワイトリストが指定されていない場合、 次の Java 正規表現はデフォルトで除外されます。

^.*_(MD5|SHA|SHA1)$
^TLS_RSA_.*$
^SSL_.*$
^.*_NULL_.*$
^.*_anon_.*$

拒否リストを指定した場合は このフィルタはオーバーライドされます。すべての暗号を個別にブラックリストに登録する必要があります。

暗号スイートと暗号アーキテクチャの詳細については、以下をご覧ください。 <ph type="x-smartling-placeholder"></ph> Java 暗号化アーキテクチャの Oracle Providers Documentation for JDK 8

conf_webserver_ssl.session.cache.size=

conf_webserver_ssl.session.timeout=

以下を決定する整数。

  • セッション情報を保存する TLS/SSL セッション キャッシュ サイズ(バイト単位) 構成する必要があります
  • TLS/SSL セッションがタイムアウトするまで継続できる時間( ミリ秒)。