Edge for Private Cloud v. 4.17.01
デフォルトでは、Management API の TLS は無効になっています。Edge Management API には、Management Server ノードの IP アドレスとポート 8080 を使用して HTTP 経由でアクセスします。次に例を示します。
http://ms_IP:8080
または、次の形式でアクセスできるように、Management API への TLS アクセスを構成することもできます。
https://ms_IP:8443
この例では、ポート 8443 を使用するように TLS アクセスを構成します。ただし、このポート番号は Edge で必須ではありません。Management Server を構成して、他のポート値を使用できます。唯一の要件は、ファイアウォールが指定されたポートを介したトラフィックを許可することです。
Management API との間のトラフィックを暗号化するには、/opt/apigee/customer/application/management-server.properties ファイルで設定を構成します。
TLS 構成に加えて、management-server.properties ファイルを変更することで、パスワード検証(パスワードの長さと強度)を制御することもできます。
TLS ポートが開いていることを確認する
このセクションの手順では、Management Server のポート 8443 を使用するように TLS を構成します。使用するポートに関係なく、Management Server でポートが開いていることを確認する必要があります。たとえば、次のコマンドを使用して開くことができます。
$ iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 8443 -j ACCEPT --verbose
TLS の構成
/opt/apigee/customer/application/management-server.properties ファイルを編集して、Management API との間で送受信されるトラフィックでの TLS の使用を制御します。このファイルが存在しない場合は作成します。
管理 API への TLS アクセスを構成する手順は次のとおりです。
- TLS 証明書と秘密鍵を含むキーストア JKS ファイルを生成します。詳細については、Edge On Premises の TLS/SSL の構成をご覧ください。
- キーストア JKS ファイルを Management Server ノードのディレクトリ(/opt/apigee/customer/application など)にコピーします。
- JKS ファイルの所有権を apigee に変更します。
$ chown apigee:apigee keystore.jks
ここで、keystore.jks はキーストア ファイルの名前です。 - /opt/apigee/customer/application/management-server.properties を編集して、次のプロパティを設定します。このファイルが存在しない場合は、作成します。
conf_webserver_ssl.enabled=true
# 多くの Edge 内部呼び出しは HTTP を使用するため、
# conf_webserver_http.turn.off は false のままにします。
conf_webserver_http.turn.off=false
conf_webserver_ssl.port=8443
conf_webserver_keystore.path=/opt/apigee/customer/application/keystore.jks
# 難読化されたキーストア パスワードを以下に入力します。
conf_webserver_keystore.password=OBF:obfuscatedPassword
conf_webserver_cert.alias=apigee-devtest
ここで、keyStore.jks はキーストア ファイル、obfuscatedPassword は難読化されたキーストア パスワードです。難読化されたパスワードの生成については、Edge On Premises の TLS/SSL の構成をご覧ください。 - 次のコマンドを使用して、Edge Management Server を再起動します。
$ /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
管理 API が TLS 経由のアクセスをサポートするようになりました。
TLS が正しく動作していることを確認したら(Edge UI で動作していることを確認することも含む)、次のセクションで説明するように、Management API への HTTP アクセスを無効にできます。
TLS を使用して Edge API にアクセスするように Edge UI を構成する
上記の手順では、Edge UI が HTTP 経由で Edge API 呼び出しを継続できるように、conf_webserver_http.turn.off=false のままにすることをおすすめしました。
Edge UI でこれらの呼び出しを HTTPS 経由でのみ行うように構成するには、次の手順を行います。
- 上記の説明に沿って、管理 API への TLS アクセスを構成します。
- 管理 API で TLS が機能していることを確認したら、/opt/apigee/customer/application/management-server.properties を編集して、次のプロパティを設定します。
conf_webserver_http.turn.off=true - 次のコマンドを使用して、Edge Management Server を再起動します。
$ /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart - /opt/apigee/customer/application/ui.properties を編集して、Edge UI に次のプロパティを設定します。このファイルが存在しない場合は、作成します。
conf_apigee_apigee.mgmt.baseurl="https://FQDN:8443/v1"
ここで、FQDN は、Management Server の証明書アドレスに従った完全なドメイン名です。ポート番号は、conf_webserver_ssl.port で指定されたポートです。 - 上記の Management API への TLS アクセスを構成するときに、自己署名証明書を使用した場合のみ(本番環境では推奨されません)、次のプロパティを ui.properties に追加します。
conf/application.conf+play.ws.ssl.loose.acceptAnyCertificate=true
それ以外の場合、Edge UI は自己署名証明書を拒否します。 - 次のコマンドを使用して Edge UI を再起動します。
$ /opt/apigee/apigee-service/bin/apigee-service edge-ui restart
Management Server の TLS プロパティ
次の表に、management-server.properties で設定できるすべての TLS/SSL プロパティを示します。
|
プロパティ |
説明 |
|---|---|
|
conf_webserver_http.port=8080 |
デフォルトは 8080 です。 |
|
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= |
難読化されたパスワードを OBF:xxxxxxxxxx の形式で使用します。 |
|
conf_webserver_cert.alias= |
キーストア証明書のエイリアス(省略可) |
|
conf_webserver_keymanager.password= |
鍵マネージャーにパスワードがある場合は、難読化されたパスワードを OBF:xxxxxxxxxx の形式で入力します。 |
|
conf_webserver_trust.all= <false | true> conf_webserver_trust.store.path=<path> conf_webserver_trust.store.password= |
トラストストアの設定を構成します。すべての TLS/SSL 証明書を受け入れるかどうか(たとえば、非標準タイプを受け入れるかどうか)を決定します。デフォルトは false です。トラストストアへのパスを指定し、難読化されたトラストストアのパスワードを OBF:xxxxxxxxxx の形式で入力します。 |
|
conf_webserver_exclude.cipher.suites=<CIPHER_SUITE_1 CIPHER_SUITE_2> conf_webserver_include.cipher.suites= |
追加または除外する暗号スイートを指定します。たとえば、暗号に脆弱性が見つかった場合は、ここで除外できます。複数の暗号はスペースで区切ります。 暗号スイートと暗号アーキテクチャの詳細については、以下をご覧ください。
http://docs.oracle.com/javase/8/docs/technotes/ |
|
conf_webserver_ssl.session.cache.size= conf_webserver_ssl.session.timeout= |
以下を決定する整数:
|