Edge からバックエンド サーバーへのフォワード プロキシを構成する

Edge for Private Cloud v4.18.05

Edge とバックエンド ターゲット サーバーの間で HTTP 転送プロキシを使用する場合は、Edge Message Processor ノードで送信プロキシ設定プロパティを構成する必要があります。これらのプロパティは、Edge から HTTP フォワード プロキシにターゲット リクエストをルーティングするように Message Processor を構成します。

Message Processor を構成するには、/opt/apigee/customer/application/message-processor.properties を編集してから、Message Processor を再起動します。message-processor.properties ファイルが存在しない場合は作成します。

Message Processor を構成するには、次のプロパティを設定します。

プロパティ 説明

conf_http_HTTPClient.use.proxy

すべての API プロキシで、転送プロキシをデフォルトで「true」にするか、デフォルトでは使用せず、「false」にするかを指定します。

conf_http_HTTPClient.use.tunneling

デフォルトでは、Edge はすべてのトラフィックにトンネリングを使用します。デフォルトでトンネリングを無効にするには、このプロパティを "false" に設定します。

conf/http.properties+HTTPClient.proxy.type

HTTP または HTTPS として HTTP プロキシのタイプを指定します。デフォルトでは「HTTP」が使用されます。

conf/http.properties+HTTPClient.proxy.host

HTTP プロキシが実行されているホスト名または IP アドレスを指定します。

conf/http.properties+HTTPClient.proxy.port

HTTP プロキシが動作しているポートを指定します。このプロパティを省略すると、HTTP にはポート 80、HTTPS にはポート 443 がデフォルトで使用されます。

conf/http.properties+HTTPClient.proxy.user
conf/http.properties+HTTPClient.proxy.password

HTTP プロキシで Basic 認証が必要な場合は、これらのプロパティを使用して認証の詳細を指定します。

次に例を示します。

conf_http_HTTPClient.use.proxy=true
conf_http_HTTPClient.use.tunneling=false
conf/http.properties+HTTPClient.proxy.type=HTTP
conf/http.properties+HTTPClient.proxy.host=my.host.com
conf/http.properties+HTTPClient.proxy.port=3128
conf/http.properties+HTTPClient.proxy.user=USERNAME
conf/http.properties+HTTPClient.proxy.password=PASSWORD

次のプロパティを設定したら、Message Processor を再起動してください。

/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart

Message Processor でフォワード プロキシを構成すると、API プロキシからバックエンド ターゲットへのトラフィックはすべて指定された HTTP フォワード プロキシを経由します。API プロキシの特定のターゲットへのトラフィックを、転送プロキシを経由せずに直接バックエンド ターゲットに送信する場合は、ターゲット エンドポイントで次のプロパティを設定して HTTP 転送プロキシをオーバーライドします。

<Property name="use.proxy">false</Property>

ターゲット エンドポイントでのプロパティ設定の詳細については、エンドポイント プロパティのリファレンスをご覧ください。

デフォルトでターゲットが HTTP 転送プロキシを使用しない場合は、次のように http.properties を指定できます。

conf_http_HTTPClient.use.proxy=false

次に、HTTP フォワード プロキシ経由でトラフィックを送るターゲット エンドポイントに対して use.proxy を「true」に設定します。

<Property name="use.proxy">true</Property>

デフォルトでは、Edge はプロキシへのトラフィックにトンネリングを使用します。デフォルトでトンネリングを無効にするには、message-processor.properties ファイルで次のプロパティを設定します。

conf_http_HTTPClient.use.tunneling=false

特定のターゲットでトンネリングを無効にする場合は、ターゲット エンドポイントで use.proxy.tunneling プロパティを設定します。ターゲットが TLS/SSL を使用する場合、このプロパティは無視され、メッセージは常にトンネルを介して送信されます。

<Property name="use.proxy.tunneling">false</Property>

Edge 自体をフォワード プロキシとして機能させる、つまりバックエンド サービスからリクエストを受け取って社外のインターネットにルーティングする場合は、まず Edge に API プロキシをセットアップします。その API プロキシに対してバックエンド サービスからリクエストを送信すると、API プロキシが外部サービスに接続します。