リスン ポートのプロパティ

のリスン ポートに関する詳細を作成または表示すると、[Listen Port Properties]が表示されます。 ポートのプロパティは以下のタブに整理されています。
10-0CR1
Layer7 API Gateway
リスン ポートに関する詳細を作成または表示すると、[Listen Port Properties]が表示されます。 ポートのプロパティは以下のタブに整理されています。
  • Basic Settings
  • SSL/TLS Settings
  • Pool Settings
  • FTP Settings
  • Other Settings
  • Advanced
リスン ポートのプロパティを編集すると、リスン ポートは自動的に再起動されます。
目次
Gateway での FTP(S) サポートに関する重要な詳細情報を以下に示します。
  • FileZilla、FireFTP、WinSCP などの一般的な FTP クライアントがサポートされています。
  • パッシブ FTP のみがサポートされています。
  • FTP(S) サーバでは、SSL リスナで指定された秘密鍵を使用します(クライアント証明書はサポートされていません)。 ファイルはバイナリ モードでのみ転送できます(ASCII/EBCDIC はサポートされていません)。
  • アップロードのみの FTP リクエストの場合、Content-Type は「text/xml」であると仮定され、SOAPAction ヘッダは空であると仮定されます。 拡張モードの場合、Content-Type は「application/octet-stream」です。
リスン ポートのプロパティにアクセスする方法
  1. リスン ポートの管理タスクを実行します。
  2. ポートを選択し、
    [Properties]
    を選択します。 また、[Create]を選択して、新しいポートのプロパティを入力することもできます。 [Listen Port Properties]が表示されます。
  3. 必要に応じてプロパティ内の各タブを設定します。 各タブの詳細な説明については、以下の該当するセクションを参照してください。
  4. 完了したら、
    [OK]
    を選択します。
[Basic Settings]タブの設定
[Basic Settings]タブでは、タイプにかかわらず、すべてのリスン ポートに関連する基本情報を設定します。
設定
説明
名前
リスン ポートの用途を説明します。 この「わかりやすい」説明は、[Manage Listen Ports]ダイアログ ボックスに表示されます。
Enabled
指定したポートでトラフィックをリスンするには、このチェック ボックスをオンにします。 あるポートでリスナが無効な場合、Gateway は、そのポートにリスナが設定されていない場合と同じように動作します。
: ポート 8080 のリスナを無効にした場合、ポート 8080 に設定されたリスナがない場合と同じようにシステムは動作します。 そのポートへの接続を試行すると、「接続拒否」エラーになります。
Protocol
ドロップダウン リストから、使用するプロトコル(
[HTTP]
[HTTP2]
[HTTP2 (Secure)]
[HTTPS]
[FTP]
[FTPS]
、または
[SSH2]
)を選択します。 カスタム転送プロトコルが追加されている場合は、このリストに表示されます。 1 つの事前定義済みカスタム転送プロトコル l7.raw.tcp があります。
Port
TCP ポート番号を入力します。 FTP および FTPS の場合、これは制御接続を開くために使用されるポート番号になります。 パッシブ データ接続では、
[FTP Settings]
タブで設定された FTP パッシブ範囲から割り当てられたポートを使用します。
リスン ポートが SSH2 プロトコルを使用している場合は、Linux または Unix システムのデフォルト SSH ポート 22 と競合する可能性があるため、ポート 22 を使用しないようにしてください。
Interface
ドロップダウン リストから、監視するインターフェースまたは IP アドレスを選択します。 このリストには、Gateway および[Manage]ボタンを使用して設定されたインターフェースで使用可能なすべての IP アドレスが示されます。
すべての使用可能なアドレスをリスンするには、
[All]
を選択します。
メッセージの理解:
"Possible Input Error. With a cluster, using an interface identified by a raw IP address can have unexpected effects."
このエラーは、IP アドレス全体に基づいてインターフェース タグを定義したことを警告しています(パターンと逆)。 クラスタでは、このインターフェース タグにバインドされているリスン ポートは、この IP アドレスを所有しているクラスタ ノードのみを開くことができるため、これは問題になります。 その他の影響がある可能性もあります。
例外:
リスン ポートをループバック アドレス(例: "127.0.0.1")にバインドするインターフェース タグを意図的に作成している場合、各クラスタ ノードで固有のローカル プロセスからのみこのリスン ポートへの接続を受け入れるようにするには、このメッセージを無視できます。
Manage
[Manage]
を選択し、リストに対してインターフェースを追加または削除します。 詳細については、「インターフェースの管理」を参照してください。
Enabled Features: このセクションでは、このリスン ポートからアクセスできる Gateway サービスが決まります。
Published service message input
リクエストをメッセージ プロセッサにサブミットできるようにします。メッセージ プロセッサでは、リクエストがサービスに解決され、ポリシーによって処理されます。 リクエストの解決方法に関する詳細については、「Gateway サービス解決プロセス」を参照してください。
Built-in services
以下の組み込みサービスにリクエストを行うことができるようにします。 組み込みサービスのリストを展開および折りたたむことができます。
デフォルトでは、
[HTTP2]
および
[HTTP2 (Secure)]
プロトコルを選択すると、このチェック ボックスは無効になります。
適用可能なすべてのサービスを有効にするには、
[Built-in services]
チェック ボックスをオンにします。 すべての組み込みサービスを無効にするには、このチェック ボックスをオフにします。
チェック ボックスがオフになっている場合、1 つ以上のサービスが無効になっていることを示すこともあります。
また、特定のサービスを有効または無効にできます。
  • Policy download service
    Layer7 API Gateway
    - XML VPN Client によって使用されます
  • Ping service
    : Gateway の可用性をテストするために使用します。 詳細については、「ping URI のテスト」を参照してください。
  • WS-Trust security token service
    : SAML アサーションを取得し、WS-SecureConversation セッションを確立するために、
    Layer7 API Gateway
    - XML VPN Client によって使用されます
  • Certificate signing (CA) service
    Layer7 API Gateway
    - XML VPN Client によって使用されます(ポートのプロトコルが HTTPS に設定されている場合のみ使用可能)
  • Password changing service
    Layer7 API Gateway
    - XML VPN Client によって使用されます(ポートのプロトコルが HTTPS に設定されている場合のみ使用可能)
  • WSDL download service
    Layer7 API Gateway
    - XML VPN Client およびエンドユーザ プログラムによって使用されます。
  • SNMP query service
    : ホストとして localhost を使用する HTTP ベースの SNMP クエリ サービス
    このオプションは、
    builtinService.snmpQuery.enabled
    クラスタ プロパティの変更によってオーバーライドできます。
Policy Manager access
Policy Manager のデスクトップ クライアント バージョンが Gateway にアクセスすることを許可します。
Browser-based administration
Policy Manager のブラウザ クライアント バージョンが Gateway にアクセスすることを許可します。 このオプションは、[
Policy Manager access
]がオンの場合にのみ使用可能です。
ブラウザ ベースの管理を有効にすると、以下の機能も有効になります。
Enterprise Manager access
Enterprise Service Manager が Gateway にアクセスすることを許可します。
Gateway が
クラスタと通信できるように、関連するポート番号を、
admin.esmPort
クラスタ プロパティで設定する必要があります。 詳細については、「Gateway クラスタ プロパティ」の「時間単位」を参照してください。
[Enterprise Manager access]チェック ボックスは、リスナが HTTPS ([
Basic Settings
]タブの[Protocol]フィールド)を使用し、クライアント認証を許可([
SSL/TLS Settings
]タブの[Client Authentication]フィールドを[Optional]または[Required]に設定)している場合にのみ使用可能です。
Inter-Node Communication
ノード間の通信を許可し、ログの表示など、特定の管理上の機能に対して必要です。 無効な場合、クラスタ内のその他のノードのログは表示できません。
Node Control
クラスタ内の各 Gateway ノードの個別の停止/起動を許可します。 無効な場合、Gateway のステータスは取得できません。 Gateway アプライアンスが正しく動作するには、[Node Control]がオンになっている必要があります。
[Node Control]機能を使用できるのは、[(All)]またはループバック/localhost アドレス(「127.0.0.1」や「::1」など)でリスンしている場合のみです。
Security Zone
必要に応じて、セキュリティ ゾーンを選択します。 セキュリティ ゾーン(セキュリティ ロールの許可)からこのエンティティを削除するには、[No security zone]を選択します。
セキュリティ ゾーンの詳細については、「セキュリティ ゾーンの理解」を参照してください。
このコントロールは、(a)セキュリティ ゾーンが定義されていない、または(b)(ゾーン内部のエンティティへの読み取りアクセスがあるかどうかに関係なく)セキュリティ ゾーンへの読み取りアクセス権がない場合は表示されません。
[SSL/TLS Settings]タブの設定
リスナ プロトコルが HTTPS または FTPS である場合は、[SSL/TLS Settings]タブで設定を行います。
設定
説明
Server Private Key
ドロップダウン リストから、リスン ポートで使用するサーバ秘密鍵を選択します。 SSL リスナは任意のキーストアから、システムの任意の秘密鍵を使用できます。 適切な秘密鍵が表示されない場合は、
[Manage Private Keys]
を選択して追加します。 詳細については、「秘密鍵の管理」を参照してください。
[Server Private Key]をデフォルトの SSL キー以外のキーに設定した場合、[
Basic Settings
]タブの[
Policy Manager access
]オプションと[
Browser-based administration
]オプションは無効になります。
Client Authentication
認証のためにクライアントが証明書を提示する必要があるかどうかを指定します。
  • None:
    クライアントは証明書を提示する必要はありません。 この設定では、デスクトップ クライアントを使用して Gateway に接続する場合にクライアント証明書によるログインが許可されません。 ただし、この設定では、Policy Manager のブラウザ クライアント バージョンを使用して Gateway に接続する場合のセキュリティ プロンプトの数が少なくなります。
  • Optional:
    クライアントは必要に応じて証明書を提示することができます。 この設定では、Gateway に接続する場合にクライアント証明書によるログインが許可されます。
  • Required:
    認証のためにクライアントは証明書を常に定時する必要があります。 この設定を使用すると、[
    Basic Settings
    ]タブの[
    Policy Manager access
    ]オプションおよび[
    Browser-based administration
    ]オプションが無効になります。
クライアントが対応する秘密鍵を保持している場合、Gateway は SSL ハンドシェイク中にすべてのクライアント証明書を受け入れます。
Enabled TLS Versions
リスン ポートに対して有効にする TLS バージョンの隣のチェック ボックスをオンにします。
デフォルトでは、リスン ポートを作成するときに、
[TLS 1.2]
および
[TLS 1.3]
チェック ボックスがオンになります。
注:
[HTTP2]プロトコル
および
[HTTP2 (Secure)]
プロトコルでは、
[TLS 1.0]
チェック ボックスおよび
[TLS 1.1]
チェック ボックスが無効になっています。 これは、HTTP/2 RFC に準拠した標準的な動作です。
HTTP/2 では、TLS v1.2 以降のみがサポートされています。
HTTPS と FTPS では、
[TLS 1.0]
[TLS 1.1]
を無効にすることをお勧めします。
Enabled Cipher Suites
SSL リスン ポートで有効にする暗号化スイートを選択します。 SSL ハンドシェイク中には、双方がそれぞれ使用可能な暗号化スイートとその優先順位に基づいてネゴシエートを行います。
リスナの暗号化スイートを無効にした場合、Gateway は、そのリスナを使用した SSL ハンドシェイク中にその暗号化スイートの使用が選択されることを許可しません。 クライアントとサーバにその他の共通の暗号化スイートがない場合、SSL ハンドシェイクは失敗します。
クライアントとサーバに共通の暗号化スイートが複数ある場合、
[Move Up]
および
[Move Down]
ボタンを使用して、暗号化スイートの優先順位を変更します。 リストの先頭に近い暗号化スイートが、末尾に近いスイートよりも優先されます。
表示される暗号のリストは、Gateway のセキュリティ設定によって異なる場合があります。 サポートされているすべての暗号化スイートのリストについては、「暗号化スイートの選択」を参照してください。
この順序を使用
Gateway バージョン 10 CR1 で利用可能
[Enabled Cipher Suites]チェック リストに表示される設定の順序で、暗号化スイートの使用を適用します。 このオプションは、クライアントが暗号設定を決定する可能性を防ぐためです。
Gateway バージョン 10 CR1 にアップグレードすると、この新しいオプションが自動的に選択されますか?
このオプションは、以下を実行する場合にデフォルトで選択されます。
  • Gateway バージョン 10 CR1 の新規インストールまたは最初からインストールする場合
  • バージョン 10 (ベース)またはバージョン 9.4 (任意の CR)を実行している既存の Gateway を使用したバンドルを介して、Gateway をバージョン 10 CR1 に移行する場合。
バージョン 10 (ベース)またはバージョン 9.4 (任意の CR)を実行している Gateway から標準アップグレードを実行している場合、このオプションはデフォルトではオンになりません。
Use Default List
暗号化のリストをシステムのデフォルトの優先順位に戻して有効な状態にするには、このボタンをクリックします。
[Pool Settings]タブの設定
[Pool Settings]タブでは、リスナによって使用されるスレッド プールを設定できます、このタブは、
HTTP
HTTPS
HTTP2
HTTP2 (Secure)
、またはカスタム転送プロトコルに対してのみ有効です。 デフォルトでは、すべての新しいリスナは共有スレッド プールを使用します。 必要に応じて、プライベート スレッド プールを使用するようにリスナを設定することができます。 プライベート スレッド プールを使用すると、Gateway のリソースを分離し、それらを特定のリスナ専用にすることができます。 メッセージ処理トラフィックは共有プールを使用する必要がありますが、特定のリスナ(サービスの個別のユーザ用など)またはメッセージ トラフィックの多いリスン ポートに専用のリソースを設ける場合、プライベート プールを使用できます。
プライベート スレッド プールの使用には、以下の制限があります。
  • その他のリスナはプライベート スレッドを使用できません。したがって、これはそれほど柔軟ではない方法です。
  • Gateway ではスレッド数を無制限にサポートできません。したがって、プライベート プールを使用するには、これをサポートするためにその他の設定変更が必要になります(たとえば、共有スレッド プール サイズの縮小、使用可能な DB 接続の数の増加、最大メッセージ サイズの縮小など)。
プライベート スレッド プールは、共有スレッド プールからスレッドを取得しません。 たとえば、以下の設定を考えてみましょう。
  • 3 つの Gateway で構成されるクラスタ
  • 各ノードには、
    io.httpMaxConcurrency
    = 1500 が指定され、サービス ABC 用のプライベート スレッド プール 300 が含まれる 1 つのリスン ポートがあります。
このシナリオでは、サービス ABC では最大 900 個のプライベート スレッド(300 x 3)が許可され、Gateway 上の残りのサービスは共有スレッド プール内で 4500 スレッド(1500 x 3)を共有します。
Gateway のデフォルト ノード設定および管理リスン ポート 2124 (「ノード管理」)では、最大限のパフォーマンスを得るためにプライベート スレッド プールが使用されます。
設定
説明
Use private thread pool
リスナがプライベート スレッド プールを使用できるようにします。
Thread pool size
このプライベート プールに割り当てるスレッド数を指定します。 最小値は
1
、最大値は
10000
(非推奨)です。
スレッド プール サイズにさらに大きな値を使用する場合、必要となる可能性がある追加の Gateway 設定変更についてサポートにお問い合わせください。
[FTP Settings]タブの設定
リスナ プロトコルが FTP または FTPS である場合は、[FTP Settings]タブで設定を行います。
設定
説明
First Passive Port
パッシブ データ接続に使用する範囲の最初のポートを指定します。
Number of Passive Ports
パッシブ接続に使用する範囲のポートの数を指定します。
FTP Command Handling
使用する FTP コマンド処理モードを選択します。 各モードの詳細な説明については、以下の「FTP コマンド処理モードの理解」を参照してください。
デフォルト モードは[Process STOR/STOU commands only...]です。これは、バージョン 8.2.0 より前の FTP コマンド処理機能と同じです。
FTP コマンド処理モードの理解
Process STOR/STOU commands only, resolve service by working directory if no service associated
アップロードのみの FTP コマンド セットおよび処理のみが必要な場合、このオプションを選択します。 このオプションは、非対話型のアップロード シナリオに最適です。 このモードの動作を以下に示します。
  • STOR または STOU コマンドが送信されると、ファイルは Gateway によってクライアントから転送され、公開サービスへのリクエスト メッセージを作成するために使用されます。
  • PORT、PASS、TYPE、およびその他のほとんどの標準的な接続関連コマンドは、予期されたとおりに動作します。
  • ディレクトリ移動コマンド(CWD、CDUP など)は常に成功します。 Gateway では、ディレクトリの存在は確認されません。 クライアントは、要求されたすべてのディレクトリが存在し、それらのディレクトリが空であると仮定します。
  • その他のコマンドは、予期しない結果またはエラーのある結果を引き起こす可能性があります。 そのため、STOR/STOU コマンド以外をルーティングする必要がある場合は、[Support extended FTP command set...]オプションを選択することをお勧めします。
Support extended FTP command set, resolve requests to the associated service
拡張 FTP コマンド セットを使用するには、このオプションを選択します。 このオプションは、FTP プロキシ シナリオで Route via FTP(S) アサーションと一緒に使用するためのものです。 公開されているサービスがリスン ポートに関連付けられていることを確認してください([
Advanced
]タブで定義)。
このモードでは、プロキシできるすべてのコマンドは、指定されたサービスへのリクエストとして処理されます。
Command
説明
APPE
ファイルを追加します
CDUP
作業ディレクトリを親ディレクトリに変更します
CWD
作業ディレクトリを変更します
DELE
指定したファイルを削除します
LIST
指定したディレクトリの指定したファイルまたは内容をリスト表示します
MDTM
制御接続を使用して、指定したファイルの最終更新時刻を返します
MKD
ディレクトリを作成します
MLSD
標準化された形式で指定したディレクトリ内のファイルの詳細をリスト表示します
MLST
制御接続を使用して、指定したファイルに関する情報を返します
NLST
指定したディレクトリ内のファイルの名前をリスト表示します
NOOP
操作はありません
PWD
制御接続を使用して、作業ディレクトリを返します
RETR
指定したファイルを取得(ダウンロード/GET)します
RMD
ディレクトリを削除します
SIZE
制御接続を使用して、ファイルのサイズをバイト単位で返します
STOR
指定したファイルをリモートの作業ディレクトリに格納(アップロード/PUT)します
STOU
指定したファイルをリモートの作業ディレクトリに一意に格納(アップロード/PUT)します
STOU (一意に格納)ルーティングのサポートは、Route via FTP(S) アサーション内から選択できず、(たとえば、コンテキスト変数で)出現した場合は STOR コマンドとしてルーティングされます。 NOOP (操作なし)コマンドは、コンテキスト変数(たとえば、リスン ポートによって設定された変数)で指定された場合、ルーティングされますが、Route via FTP(S) アサーション内から選択できません。
以下のコマンドは FTP リスン ポートによって許可されますが、関連するポリシーによってメッセージとして処理されません。
Command
説明
RFC
注意事項
ABOR
アクティブなファイル転送を中止します
959
AUTH
認証/セキュリティ メカニズムを確立します
2228
EPRT
接続用の拡張されたアドレスおよびポートを指定します
2428
EPSV
拡張されたパッシブ モードに入ります
2428
FEAT
サポートされている拡張機能をリスト表示します
2389
リストの内容は、リスン ポートの「FTP コマンド処理」モードによって異なります
HELP
Help
959
LANG
言語のネゴシエーション
2640
現在、英語のみがサポートされています。
MODE
転送モードを指定します
959
「Streaming」および「Compressed」のみ
OPTS
機能のオプションを選択します
2228
「UTF8」がリスン ポートのサーバのデフォルトのため、「OPTS UTF8」設定は影響しません。
「OPTS MLSD」コマンドはリモート FTP サーバの設定に依存するため、MLSD の結果の形式に影響しません。
PASS
ユーザ パスワードを指定します
959
ユーザ名およびパスワードはリスン ポートのサーバによって認証されませんが、関連するサービスに対して行われるリクエストの一部であるため、それらのサービスで認証される可能性があります。
PASV
パッシブ モードに入ります
959
PBSZ
保護されたバッファ サイズ
2228
PBSZ 0 のみがサポートされています。
PORT
接続するアドレスおよびポートを指定します
959
PROT
データ チャネルの保護レベルを設定します
2228
「Clear」および「Private」がサポートされています。
QUIT
切断します
959
REIN
ユーザ接続を再初期化します
959
STAT
現在のステータスを返します
959
リスン ポートのサーバのみ。リモート FTP サーバのステータスは反映されません
STRU
転送するファイルの構造を設定します
959
ファイル構造のみ
SYST
システム タイプを返します
959
Gateway の「os.name」 Java システム プロパティに相当します。
TYPE
転送モードを設定します
959
Binary および ASCII オプションが許可されていますが、ルーティングされた転送コマンドは、Binary に設定されていない場合は失敗します。
USER
認証ユーザ名
959
ユーザ名およびパスワードはリスン ポートのサーバによって認証されませんが、関連するサービスに対して行われるリクエストの一部であるため、それらのサービスで認証される可能性があります。
サポートされていない FTP コマンド
以下のコマンドは現在サポートされていません。
Command
説明
RFC
ACCT
アカウント情報
959
ALLO
ディスク容量を割り当てます
959
CCC
コマンド チャネルをクリアします
2228
ADAT
認証/セキュリティ メカニズム
2228
CONF
機密保護コマンド
2228
ENC
プライバシー保護コマンド
2228
MIC
完全性保護コマンド
2228
LPRT
ロング アドレスおよびポートを指定します
1639
LPSV
ロング パッシブ モードに入ります
1639
REST
ファイル転送を再開します
3659
RNFR
指定したファイルの名前を変更します
959
RNTO
指定したファイル名に変更します
959
SITE
サイト固有のコマンドを発行します
959
SMNT
ファイル構造をマウントします
959
X***
すべての RFC 775 コマンド
775
例: 拡張 FTP コマンドをサポートするプロキシを設定する方法
以下の例は、リスン ポートおよび Route via FTP(S) アサーションで拡張 FTP コマンドを使用する方法を示しています。 この設定は、FileZilla、FireFTP、WinFTP、および WinSCP クライアントと互換性があります。
前提条件
  • 設定済みのリモート FTP サーバ
  • 関連するホスト、セキュリティ、およびポート設定を持ったリモート FTP サーバにルーティングするように設定された Route via FTP(S) アサーションを含んでいるサービス ポリシー。
拡張
FTP
コマンドをサポートするプロキシを設定する方法
  1. [Listen Port Properties]の[
    Basic Settings
    ]タブを完了します。
  2. [Listen Port Properties]の[
    FTP Settings
    ]タブを完了します。 必ず[Support extended FTP...]オプションを選択してください。
  3. [Listen Port Properties]の[
    Advanced
    ]タブを以下のように完了します。
    1. サイズの大きいアップロード(2 GB 超)をサポートする必要がある場合は、[Override maximum message size]チェック ボックスをオンにして、新しい制限を指定するか、無制限のメッセージ サイズを許可します。
    2. 公開されているサービスとポートを関連付けます。 これは、拡張 FTP コマンド セットをサポートするために必要です。
    3. このリスン ポートのクラスタ プロパティのいずれかをオーバーライドする必要がある場合は、[Advanced Properties]を設定します。 使用可能な FTP 関連の高度なプロパティとそのデフォルト値を次に示します:
      ftp.sessionIdleTimeout=60
      ftp.maxRequestProcessingThreads=10
      ftp.anonymousLoginsEnabled=true
      ftp.maxAnonymousLogins=10
      ftp.maxConcurrentLogins=10
      ftp.userMaxConcurrentLogins=10
      ftp.userMaxConcurrentLoginsPerIp=10
    これらのプロパティの説明については、「FTP のクラスタ プロパティ」を参照してください。
  4. サービス ポリシーを作成します。 以下の例は、リスン ポートおよび Route via FTP(S) アサーションで拡張 FTP コマンドを使用する方法を示しています。 この例では、FTP クライアントによって提供された認証情報は、リモート FTP サーバへの接続の認証に使用されます。
    Require FTP Credentials
    Request: Configure Message Streaming: enable streaming
    Route via FTPS Server
    Configure Message Streaming アサーションにより、FTP クライアントでの透過的なファイルのアップロードおよびより正確な進捗状況の監視が可能になります。 このアサーションを省略すると、ほとんどの(かなりの)アップロードのルーティングが遅延し、タイムアウトの可能性を引き起こします。
  5. [FTP(s) Routing Properties]の[
    Connection
    ]タブで以下のように設定します。
    1. コマンドで
      [From Variable]
      を選択し、コマンド変数に「
      request.ftp.command
      」と入力します。
    2. ディレクトリとして、「
      ${request.ftp.path}
      」を入力します。
    3. 引数として、「
      ${request.ftp.argument}
      」を入力します。
    4. アサーション出力
      [Never fail as long as target replies]
      を選択します。 この設定によって、FTP クライアントがリモート FTP サーバから有用なレスポンスを受信することが許可されます。 このレスポンスは、失敗の理由(たとえば、権限不足、不正にフォーマットされた引数など)を示します。
  6. 環境に応じて、アサーション プロパティの残りの設定をすべて設定します。 各設定の説明については、「Route via FTP(S) アサーション」を参照してください。
例として、LIST コマンドを使用した FTP リクエストのプロキシの概要を以下に示します。
  1. FTP クライアントは指定されたリスン ポートで Gateway に接続します。
  2. FTP クライアントは、FTP コマンドの「LIST」を使用して、作業ディレクトリの内容をリスト表示するリクエストを Gateway に送信します。
  3. Gateway はこのコマンドを処理し、FTP クライアントへのデータ接続を開きます。 FTP リクエストの変数が生成されます。
  4. ユーザの認証情報が Route via FTP(S) アサーションによって抽出された後、以下の手順を実行します。
    1. FTP リクエストの変数の値を読み取って、コマンド、作業ディレクトリ、および引数を検索します。
    2. 抽出した認証情報を使用して、リモート サーバに接続します。
  5. Route via FTP(S) アサーションは、リモート サーバに LIST コマンドを発行し、リストを受信します。このリストは、レスポンス メッセージを作成するために使用されます。 FTP レスポンスの変数が生成されます。
  6. レスポンス メッセージの本文が FTP クライアントにデータ接続を介して転送されます。転送が完了すると、その接続は閉じられます。 リモート FTP サーバからの応答コードおよびテキストは、制御接続を使用して FTP クライアントに送信されます。
[Other Settings]タブの設定
[Other Settings]タブは、
SSH2
HTTP2
HTTP2 (Secure)
、またはカスタム転送プロトコルのいずれかが
[Basic Settings]
タブで選択されている場合に使用できます。
SSH2
が選択されている場合、以下のフィールドが表示されます。
設定
説明
Enable
SSH2 サーバでサポートするネットワーク プロトコルを選択します。 デフォルトでは、[SCP]と[SFTP]のどちらもオンになっています。
Supported SCP Commands
PUT
SCP クライアントにファイルのアップロードを許可するには、このオプションをオンにします。
GET
SCP クライアントへのファイルの送信を許可するには、このオプションをオンにします。
  • Retrieve file size from context variable: 指定したコンテキスト変数からファイル サイズを取得するには、このオプションをオンにします。 コンテキスト変数からファイル サイズを取得しない場合は、このチェック ボックスをオフにします。 この場合、ファイル サイズを検出するにはメッセージ ストリーム全体を読み取る必要があります。
Supported SFTP Commands
PUT
SFTP クライアントにファイルのアップロードを許可するには、このオプションをオンにします。
  • Forward SFTP partial uploads to policy: ファイルの分割アップロードを許可するには、このオプションを選択します。 この場合、分割してアップロードされるファイルごとにポリシーを 1 回実行します。 分割アップロードを許可しない場合は、このチェック ボックスをオフにします。
GET
SFTP クライアントにファイルのダウンロードを許可するには、このオプションをオンにします。
  • Forward SFTP partial downloads to policy: ファイルの分割ダウンロードを許可するには、このオプションを選択します。 この場合、分割してダウンロードされるファイルごとにポリシーを 1 回実行します。 分割ダウンロードを許可しない場合は、このチェック ボックスをオフにします。
LIST
SFTP クライアントにファイルのリスト表示を許可するには、このオプションをオンにします。 SFTP クライアントから LIST コマンドが送信されると、ポリシーは request.command.type として設定された LIST で呼び出されます。
STAT
指定されたファイルのファイル属性を取得するには、このオプションを選択します。 SFTP クライアントから STAT コマンドが送信されると、ポリシーは request.command.type として設定された STAT で呼び出されます。
ファイルをアップロードおよびダウンロードできるようにするには、STAT または LIST を有効にする必要があります。 どちらも無効な場合、GET または PUT のいずれかのみを有効にすることができます。 この場合、ダミーのファイル統計が SFTP クライアントに返されます。
DELETE
指定されたファイルのファイル属性を取得するには、このオプションを選択します。
  • Delete file on truncate request: [PUT]で[Forward SFTP partial uploads]をオンにした場合は、このオプションのチェック ボックスをオンにします。 通常、ファイルは上書きされる前に自動的に削除されます。 削除のリクエストに対してファイルを保持するには、このチェック ボックスをオフにします。
MOVE
SFTP クライアントにファイルの移動または名前の変更を許可するには、このオプションを選択します。
MKDIR
SFTP クライアントにディレクトリの作成を許可するには、このオプションを選択します。
RMDIR
SFTP クライアントにディレクトリの削除を許可するには、このオプションを選択します。
Common Configurations
Host private key type
[Manage Stored Passwords]
を選択して、SSH2 サーバの秘密鍵を入力します。 詳細については、「保存されたパスワードの管理」を参照してください。 このフィールドは必須です。
Idle timeout (in minutes)
アイドル タイムアウトの分数を入力します。 このフィールドは必須です。
デフォルトは
10
分です。
Max. concurrent session(s) per user:
ユーザに許可する同時セッション数を入力します。 「0」(ゼロ)の値は、制限がないことを意味します。 デフォルトは
10
です。
ユーザに許可する同時セッション数は、許可する同時セッションの最大数によって制限されます(以下の設定を参照)。
Max. concurrent session(s):
許可する同時セッションの最大合計数を入力します。 「0」(ゼロ)の値は、制限がないことを意味します。 デフォルトは
10
です。
カスタム転送プロトコルを選択した場合、このタブの内容はプロトコルによって異なります。 「l7.raw.tcp」転送プロトコルの場合、以下のフィールドが表示されます。
  • Socket timeout:
    ソケットがタイムアウトになるまでの期間を入力します(ミリ秒単位)。
HTTP2
または
HTTP2 (Secure)
が選択されている場合、以下のフィールドが表示されます。
設定
説明
Maximum Connections
単一の HTTP/2 リスン ポートが受信できる TCP 接続の最大数を指定します。 クラスタ プロパティ http2.transport.maximumConnectionsDefault でデフォルト値を設定できます。
Connection IdleTimeout
接続の最大アイドル時間をミリ秒単位で指定します。 クラスタ プロパティ http2.transport.connectionIdleTimeoutDefault でデフォルト値を設定できます。
Maximum Concurrent Streams
セッションあたりの同時ストリームの最大数を指定します。 クラスタ プロパティ http2.transport.maxConcurrentStreamsDefault でデフォルト値を設定できます。
[Advanced]タブの設定
[Advanced]タブはリスン ポート用の高度な設定を定義するために使用されます。 上級ユーザのみが[Advanced Properties]タブを変更することをお勧めします。
設定
説明
Request Properties
Override maximum message size
ルーティング メッセージに許可する最大サイズをオーバーライドするには、このチェック ボックスをオンにします。
io.xmlPartMaxBytes
クラスタ プロパティで設定されている値を使用するには、このチェック ボックスをオフにします。
  • Restrict messages to: リクエスト メッセージに許可する最大サイズを入力します(バイト単位)。 コンテキスト変数を参照することもできます。
  • Allow unlimited message size (not recommended): 無制限のサイズのレスポンス メッセージを許可するには、このオプションを選択します。 これは推奨されておらず、サポートの指示の下でのみ使用してください。
Service Resolution:
[Service Resolution]の下の設定は、事前定義済みまたはカスタムのすべての転送タイプに使用できます。 これらの 2 つの設定は、リスン ポートが正常に動作するために必要な情報をやりとりしない転送を対象として設計されています。
Associate port with single published service
公開されているサービスをリスン ポートに対してあらかじめ選択するには、このオプションを選択します。 このリスン ポートを介して到着するすべてのメッセージは、指定した公開サービスにすぐにルーティングされます。 ドロップダウン リストから使用するサービスを選択します。 公開されているサービスの詳細については、「SOAP Web サービスの公開」を参照してください。
Always use specified request content type
Content-Type をリスン ポートに対してあらかじめ選択するには、このオプションを選択します。 ドロップダウン リストから使用する Content-Type を選択するか、有効な Content-Type を入力します。
高度なプロパティ
このセクションはリスン ポート用の追加の設定を定義するために使用します。 追加のプロパティが必要な場合は、サポートにお問い合わせください。
高度なプロパティのいくつかの例を以下に示します。
  • (v10.0 CR01 で利用可能)
    デフォルトでは、HTTP/2 のリスン ポートによって、各ホストが 1 秒あたり 20 イベントを送信できます。 高度なプロパティ
    maxEventsPerSecond=<value>
    を設定することで、1 秒あたりにより多くのイベントを許可できます。 このプロパティによって、クラスタ プロパティ値 http2.transport.maxEventsPerSecondDefault がオーバーライドされます。
  • 他のポートに影響を与えずに特定の SSH2 ポートを設定するには、高度なプロパティ
    l7.ssh.enabledKexAlgs=<ordered CSV list of enabled KEX algorithms>
    を追加します。
  • セキュリティを強化するために、Gateway では Gateway HTTP リスナのデフォルト サーバが以下のように難読化されます。
    • リスン ポートの高度なプロパティにエントリ
      server=<anyValue>
      が含まれる場合、レスポンスでは、レスポンス内のサーバ名として「server: <anyValue>」が返されます。
    • 高度なプロパティが存在しなくても、Gateway のシステム プロパティ
      com.l7tech.server.response.header.server
      が存在する場合、レスポンスのサーバ名としてシステム プロパティの値が返されます (高度なプロパティも存在する場合、そのプロパティの値が優先されます)。
    • 高度なプロパティとシステム プロパティのいずれも定義されていない場合、レスポンスで「server: Layer7-API-Gateway/<
      majorVersion
      >」が返されます。ここで、「<
      majorVersion
      >」は 9.x Gateway のすべてのバージョンで「9.0」となります。
    実際の Web サーバの名前が返されることはありません。
  • 再ネゴシエーションを許可する必要がある場合は、
    allowUnsafeLegacyRenegotiation = true
    という高度なプロパティを追加します。 これは、再ネゴシエーションのアプリケーション レベルの無効化を抑制し、基盤となる JSSE プロバイダがそれを処理することを可能にします。
    この高度なプロパティの設定は、現在の JDK バージョンではセキュリティの脆弱性を引き起こしません。
  • デフォルトで、Gateway では、レスポンス ヘッダ内の Content-Type および charset の間のすべてのスペースが切り捨てられます。 これを防ぐには、高度なプロパティ
    trimContentType= false
    を追加します。
    注:
    これは、送信リクエスト ヘッダには影響しません。 切り捨ては、送信リクエスト ヘッダでは発生しません。
    • 以下の高度なプロパティを使用することにより、特定の FTP(S) リスン ポートのデフォルトの動作をオーバーライドできます。
      ftp.sessionIdleTimeout
      ftp.maxRequestProcessingThreads
      ftp.anonymousLoginsEnabled
      ftp.maxAnonymousLogins
      ftp.maxConcurrentLogins
      ftp.userMaxConcurrentLogins
      ftp.userMaxConcurrentLoginsPerIp
      これらのプロパティは、対応する FTP のクラスタ プロパティと照合されます。 これらのプロパティの詳細については、「FTP のクラスタ プロパティ」を参照してください。
      技術的なヒント:
      処理スレッドをゼロに設定する影響。
      ftp.maxRequestProcessingThreads
      (10) のデフォルト値は、ほとんどのインスタンスで十分です。 ただし、これをゼロに設定した場合、結果のスレッドはゼロ以外になる場合があります。
      ftp.maxConcurrentLogins
      を無制限に設定した場合、Gateway ではデフォルトのスレッド数 10 が使用されます。
      ftp.maxConcurrentLogins
      がそれ以外の固定値に設定されている場合、作成されるスレッドの最大数はその値と等しくなります。
      同じ FTP 詳細プロパティとクラスタ プロパティを設定すると、詳細プロパティはリスン ポートを優先します。
  • デフォルトでは、単一の GET 呼び出しで取得できるヘッダの最大数は 100 です。 より多い数を取得する必要がある場合は、
    maxHeaderCount = <
    new maximum value
    >
    という高度なプロパティを追加します。
  • 各 HTTP(S) スレッド プールの現在の同時実行を追跡するには、特定のしきい値を持った高度なプロパティ
    concurrencyWarningThreshold
    を追加します。 スレッド プールの同時実行がこのしきい値を超えている場合、Gateway は特定の間隔で監査レコードをログ記録します。 間隔は、
    io.httpConcurrencyWarning.repeatDelay
    クラスタ プロパティによって定義され、デフォルトでは 60 秒になります。
    プライベート スレッド プールを使用しないコネクタはグローバル スレッド プールを共有します。 これらは、
    io.httpCoreConcurrency
    および
    io.httpMaxConcurrency
    クラスタ プロパティによって制御されます。
    ログ記録される監査には以下のものが含まれます。
    • システム監査レコード: サーバ: HTTP リスナ コンポーネント、アクション: 「Concurrency Exceeded」メッセージ: 「Listener concurrency exceeded: 999」(「999」は現在の同時実行)
    • 監査詳細レコード: 2403、WARNING、「Listener concurrency too high: {0} {1}」(「{0}」は現在の同時実行で、「{1}」はコネクタ識別子)
  • リスン ポートのデフォルトの最大 HTTP ヘッダ サイズは 8 KB (8192 バイト)です。 ほとんどの場合、これで十分です。 ただし、例外的な使用事例ではこの値を大きくする必要があります(たとえば、Run Assertions for Each Item アサーションで実行する繰り返し数が多い場合)。 これを行うには、詳細プロパティ
    maxHttpHeaderSize = <
    バイト単位の新しい値
    >
    を追加します。