XMPP/HTTP ゲートウェイ により、HTML ベースクライアントなどの非 XMPP ベースクライアントや、HTTP トラフィックを許可するが XMPP トラフィックは許可しないファイアウォールの内側にあるクライアントに Instant Messaging がアクセスできるようになります。ゲートウェイは Instant Messaging トラフィックを、HTTP クライアントの代わりに XMPP サーバーにプロキシします。
XMPP/HTTP ゲートウェイ は、Web コンテナ上の Web アプリケーションとして、Instant Messenger リソースファイルを使用して配備されます。
この章では、XMPP/HTTP ゲートウェイ の設定と保守についての情報を次の各節で説明します。
XMPP/HTTP ゲートウェイ では、設定のために次のファイルを使用します。
ゲートウェイ Web アプリケーション設定ファイル (web.xml)。このファイルの内容は、使用するゲートウェイ設定ファイルを決定します。デフォルト以外の設定ファイルの使用については、「デフォルト以外の設定ファイルを使用するように Instant Messaging XMPP/HTTP ゲートウェイ を設定する」を参照してください。
ゲートウェイ設定ファイル (通常は httpbind.conf)。ゲートウェイの設定手順については、「Instant Messaging XMPP/HTTP ゲートウェイ の設定」を参照してください。httpbind.conf ファイルの構文、ファイルの場所、このファイル内の設定パラメータの一覧については、付録 B 「httpbind.conf の Instant Messaging XMPP/HTTP ゲートウェイ 設定パラメータ」を参照してください。
ゲートウェイロギング設定ファイル (通常は httpbind_log4j.conf)。ロギング設定の詳細は、「XMPP/HTTP ゲートウェイ のロギングの管理」を参照してください。ロギング設定ファイルの構文については、「XMPP/HTTP ゲートウェイ の log4j ログ設定ファイルの構文」を参照してください。
インストール後に configure ユーティリティーを実行するとき、XMPP/HTTP ゲートウェイ を配備するかどうかを選択できます。有効にした場合、ゲートウェイのデフォルト設定ファイル (httpbind.conf) が configure ユーティリティーによって作成されます。このファイル内の値を変更することによって、設定を変更できます。httpbind.conf ファイルの構文の説明、ファイルの場所、このファイル内の設定パラメータの一覧については、付録 B 「httpbind.conf の Instant Messaging XMPP/HTTP ゲートウェイ 設定パラメータ」を参照するか、この節の手順説明を参照してください。
また、ゲートウェイを配備することを初期設定中に選択した場合、configure ユーティリティーによって im-svr-base/work ディレクトリに .war ファイルが作成され、このファイルが、Web サーバーまたはアプリケーションサーバーのコードベースで指定したディレクトリ内に配備されます。
クライアントリソースとともに Web コンテナに配備される web.xml 内の値を変更することによって、デフォルト以外の設定ファイルを使用するようにゲートウェイを設定することもできます。
この節の手順説明は、ゲートウェイ設定ファイルが httpbind.conf であることを前提にしています。デフォルト以外の設定ファイルを使用している場合は、説明中の httpbind.conf をその設定ファイルに置き換えてください。
httpbind.conf に変更を行うたびに、XMPP/HTTP ゲートウェイ を再起動する必要があります。
この節では、次の各手順を説明します。
ゲートウェイのロギングを設定する手順については、「XMPP/HTTP ゲートウェイ のロギングの管理」を参照してください。
ゲートウェイを有効にするには、configure ユーティリティーを実行してから、iim.conf 内のパラメータを設定します。Web コンテナまたはアプリケーションサーバーで提供されるツールを使用して、あとからゲートウェイを無効にできます。
ゲートウェイを有効にする手順は、次のとおりです。
configure ユーティリティーを実行します。
プロンプトが表示されたら、ゲートウェイの配備を選択します。
詳細は、第 1 章「インストール後の Instant Messaging の設定」を参照してください。
iim.conf で、iim_agent.httpbind.enable パラメータを true に設定します。
たとえば、次のようになります。
iim_agent.httpbind.enable=true |
ゲートウェイを無効にするには、Web サーバーまたはアプリケーションサーバーで提供されるツールを使用して Web アプリケーションを無効にします。
JEP 124 標準規格 (ドラフト版) の内容を理解しておく必要があります。詳細は、 http://www.jabber.org/jeps/jep-0124.html を参照してください。
httpbind.conf を開きます。
このファイルの場所については、「httpbind.conf ファイルの場所」を参照してください。
httpbind.requests パラメータに、単一クライアントがゲートウェイに送信できる最大の並行要求数を設定します。
デフォルトは 2 です。次に例を示します。
httpbind.requests=2 |
クライアントがゲートウェイに対して行うことができる並行要求の数です。このパラメータの値がクライアント要求の JEP 124 hold 属性の値よりも小さい場合、このパラメータの値は hold+1 に設定されます。このパラメータの値を 1 に設定しないでください。パフォーマンスが著しく低下する可能性があります。httpbind.hold パラメータの詳細は、「クライアント要求の JEP 124 hold 属性を XMPP/HTTP ゲートウェイ に設定する」および表 B–1を参照してください。
httpbind.conf を保存して閉じます。
Web サーバーまたはアプリケーションサーバーで提供されるツールを使用して、ゲートウェイを再起動します。
JEP 124 標準規格 (ドラフト版) の内容を理解しておく必要があります。詳細は、 http://www.jabber.org/jeps/jep-0124.html を参照してください。
httpbind.conf を開きます。
このファイルの場所については、「httpbind.conf ファイルの場所」を参照してください。
httpbind.hold パラメータに、クライアント要求の hold 属性に対してゲートウェイで許可する最大値を設定します。
デフォルトは 5 です。次に例を示します。
httpbind.hold=5 |
クライアントによって送信されたホールド値がゲートウェイのホールド値よりも大きい場合、ゲートウェイのホールド値が使用されます。
httpbind.conf を保存して閉じます。
Web サーバーまたはアプリケーションサーバーで提供されるツールを使用して、ゲートウェイを再起動します。
httpbind.conf を開きます。
このファイルの場所については、「httpbind.conf ファイルの場所」を参照してください。
httpbind.inactivity パラメータに、ゲートウェイがアイドル状態の接続を終了するまでの時間 (秒) を設定します。
デフォルトは 180 秒です。たとえば、次のようになります。
httpbind.inactivity=180 |
この時間が経過するまでにクライアントがゲートウェイをポーリングしない場合、ゲートウェイは接続を終了します。
httpbind.conf を保存して閉じます。
Web サーバーまたはアプリケーションサーバーで提供されるツールを使用して、ゲートウェイを再起動します。
httpbind.conf を開きます。
このファイルの場所については、「httpbind.conf ファイルの場所」を参照してください。
httpbind.content_type パラメータに、クライアントがその最初の要求でコンテンツタイプを指定しない場合にゲートウェイが使用するコンテンツタイプを設定します。
デフォルトは「text/xml; charset=utf-8」です。たとえば、次のようになります。
httpbind.content_type=text/xml; charset=utf-8 |
httpbind.conf を保存して閉じます。
Web サーバーまたはアプリケーションサーバーで提供されるツールを使用して、ゲートウェイを再起動します。
ラウンドトリップ遅延値は、ゲートウェイとクライアント間のラウンドトリップで、タイムアウト時間に加算される許容時間の合計 (秒) です。これは、ネットワーク遅延を考慮に入れた設定に役立ちます。
httpbind.conf を開きます。
このファイルの場所については、「httpbind.conf ファイルの場所」を参照してください。
httpbind.round_trip_delay パラメータを必要に応じて設定します。
この値を大きく設定しすぎると、パフォーマンスが低下する場合があります。値は秒数です。デフォルトは 1 秒です。たとえば、次のようになります。
httpbind.round_trip_delay=1 |
この値を大きく設定しすぎると、パフォーマンスが低下する場合があります。このパラメータを変更する前に、ネットワークの全般的な遅延を考慮してください。
httpbind.conf を保存して閉じます。
Web サーバーまたはアプリケーションサーバーで提供されるツールを使用して、ゲートウェイを再起動します。
httpbind.conf を開きます。
このファイルの場所については、「httpbind.conf ファイルの場所」を参照してください。
httpbind.wait_time パラメータを必要に応じて設定します。
クライアントは、このパラメータで指定した待ち時間以内に XMPP/HTTP ゲートウェイ から応答を得ることが保証されます。このパラメータを設定するときは、ネットワークの速度を考慮してください。この値を小さく設定しすぎて、XMPP/HTTP ゲートウェイ が時間内にほとんど応答を返せないという状況を避けるようにしてください。
値は秒数です。デフォルトは 120 秒です。たとえば、次のようになります。
httpbind.wait_time=120 |
クライアントに対する設定値がゲートウェイに対する設定値よりも大きい場合、ゲートウェイの待ち時間が使用されます。
httpbind.conf を保存して閉じます。
Web サーバーまたはアプリケーションサーバーで提供されるツールを使用して、ゲートウェイを再起動します。
httpbind.conf を開きます。
このファイルの場所については、「httpbind.conf ファイルの場所」を参照してください。
Instant Messaging ゲートウェイプールを備える配備の一部としてゲートウェイを設定する手順は、次のとおりです。
ゲートウェイプールの内部で機能しないようにゲートウェイを設定するには、httpbind.pool.support パラメータを次のように設定します。
httpbind.pool.support=false |
httpbind.conf を保存して閉じます。
Web サーバーまたはアプリケーションサーバーで提供されるツールを使用して、ゲートウェイを再起動します。
httpbind.conf を開きます。
このファイルの場所については、「httpbind.conf ファイルの場所」を参照してください。
httpbind.config パラメータに、ゲートウェイで使用する ID のリストを設定します。
このパラメータでは、各ドメインに対し別個の ID を指定する必要があります。たとえば、次のようになります。
httpbind.config=gwdomain-id |
gwdomain-id は、ドメインに対して使用する識別子です。
たとえば、次のようになります。
httpbind.config=siroe.com |
指定する gwdomain-id ごとに、次のパラメータを httpbind.conf ファイルに追加します。
gwdomain-id.domain=domain-name gwdomain-id.hosts=gateway-host gwdomain-id.componentjid=component-jid gwdomain-id.password=password |
説明:
gwdomain-id は、前の手順でゲートウェイに対して httpbind.config に指定した ID です。
domain-name は、識別されたゲートウェイが動作するドメインです。
gateway-host は、このドメインをサポートするゲートウェイホストの完全指定のドメイン名 (FQDN) およびポート番号のコンマ区切りまたはスペース区切りのリストです。
component-jid は、ゲートウェイのコンポーネント JID です。
password は、識別されたゲートウェイのパスワードです。
たとえば、gwdomain-id を siroe に設定する場合、次のようになります。
siroe.domain=siroe.com siroe.hosts=gateway.siroe.com:5222 siroe.componentjid=http.gateway.siroe.com siroe.password=gatewaypassword |
これらのキーパラメータの詳細は、「httpbind.config のゲートウェイドメイン ID キーパラメータ」を参照してください。
httpbind.conf を保存して閉じます。
Web サーバーまたはアプリケーションサーバーで提供されるツールを使用して、ゲートウェイを再起動します。
XMPP/HTTP ゲートウェイ では、セキュリティー保護された通信の手段として StartTLS のみがサポートされています。旧バージョンの SSL を使用するようにマルチプレクサが設定されている場合、マルチプレクサを迂回してサーバーに直接接続するようにゲートウェイを設定する必要があります。StartTLS が使用可能な場合、ゲートウェイは常に StartTLS の使用を試みます。詳細は、第 12 章「TLS と従来の SSL による Instant Messaging のセキュリティー保護」を参照してください。
次の各節では、XMPP/HTTP ゲートウェイ のロギングレベルを選択する手順、ロギングを完全に有効または無効にする手順、および、ゲートウェイログファイルまたはゲートウェイログ設定ファイルの場所を変更する手順について説明します。
Instant Messaging でサポートされている log4j 形式については、Apache Logging Services Web サイト で説明しています。
2 とおりの方法で、ゲートウェイのロギングを有効または無効にできます。
httpbind.conf の httpbind.log4j.config パラメータの値を追加または削除する
(推奨) ゲートウェイの log4j 設定ファイル (httpbind_log4j.conf) の内部で設定を変更する
ほとんどの場合、httpbind.log4j.config パラメータには httpbind_log4j.conf ファイルの場所を設定したまま、httpbind_log4j.conf ファイル自体の設定を変更することをお勧めします。この手順では、httpbind_log4j.conf ファイル内での設定変更について説明します。
httpbind_log4j.conf ファイルを開きます。
このファイルは、httpbind.log4j.config パラメータの値として httpbind.conf ファイルで指定した場所に格納されています。このファイルはデフォルトで、Instant Messaging のデフォルトインスタンス下の次のディレクトリ内に格納されています。
im-cfg-base/httpbind_log4j.conf |
ゲートウェイのロギングを無効にするには、log4j.logger.gateway パラメータを次のように設定します。
log4j.logger.gateway=OFF |
ロギングを有効にするには、使用するロギングレベルを log4j.logger.gateway パラメータに設定します。
たとえば、次のようになります。
log4j.logger.gateway=ERROR |
使用できる有効なロギングレベルの一覧は、表 13–1を参照してください。
httpbind_log4j.conf を保存して閉じます。
httpbind.conf を開きます。
このファイルの場所については、「httpbind.conf ファイルの場所」を参照してください。
httpbind.log4j.config パラメータの値を、XMPP/HTTP ゲートウェイ のログ設定ファイルの場所に変更します。
httpbind.conf を保存して閉じます。
Web サーバーまたはアプリケーションサーバーで提供されるツールを使用して、ゲートウェイを再起動します。
Linux では、XMPP/HTTP ゲートウェイ をインストールおよび設定したあとに、XMPP/HTTP ゲートウェイのデフォルトログファイルの場所を httpbind_log4j.conf 内で変更する必要があります。
httpbind_log4j.conf ファイルを開きます。
このファイルは、httpbind.log4j.config パラメータの値として httpbind.conf ファイルで指定した場所に格納されています。デフォルトでは、このファイルはデフォルト Instant Messaging インスタンス下の次のディレクトリに格納されています。
im-cfg-base/httpbind_log4j.conf |
log4.appender.appender_ID.file パラメータの値を、ログファイルが格納されている場所に変更します。
Apache Logging Services Web サイト で説明されている、log4j の構文および一般的な実装について理解しておく必要があります。
httpbind_log4j.conf を開きます。
このファイルは、httpbind.log4j.config パラメータの値として httpbind.conf ファイルで指定した場所に格納されています。このファイルはデフォルトで、Instant Messaging のデフォルトインスタンス下の次のディレクトリ内に格納されています。
im-cfg-base/httpbind_log4j.conf |
log4j.appender. appender-ID パラメータの値を、ログファイルを格納する場所に変更します。
httpbind_log4j.conf を保存して閉じます。
Web コンテナを再起動します。
デフォルト以外のログの場所を使用する場合、XMPP/HTTP ゲートウェイのデフォルトログファイルの場所を httpbind_log4j.conf 内で変更する必要があります。
httpbind_log4j.conf ファイルを開きます。
このファイルは、httpbind.log4j.config パラメータの値として httpbind.conf ファイルで指定した場所に格納されています。このファイルはデフォルトで、Instant Messaging のデフォルトインスタンス下の次のディレクトリ内に格納されています。
im-cfg-base/httpbind_log4j.conf |
log4.appender.appender_ID.file パラメータの値を、ログファイルの格納場所に設定します。
Apache Logging Services Web サイト で説明されている、log4j の構文および一般的な実装について理解しておく必要があります。
httpbind_log4j.conf を開きます。
このファイルは、httpbind.log4j.config パラメータの値として httpbind.conf ファイルで指定した場所に格納されています。このファイルはデフォルトで、Instant Messaging のデフォルトインスタンス下の次のディレクトリ内に格納されています。
im-cfg-base/httpbind_log4j.conf |
log4j.logger.gateway パラメータに、使用するロギングレベルを設定します。
たとえば、次のようになります。
log4j.logger.gateway=ERROR |
使用できる有効なロギングレベルの一覧は、表 13–1を参照してください。
log4j の構文および一般的な実装の詳細は、Apache Logging Services Web サイト を参照してください。ゲートウェイログ設定ファイルの構文は次のとおりです。
log4j.logger.gateway=logging-level, Appender-ID # DEFAULT TO RollingFileAppender log4j.appender.Appender-ID=org.apache.log4j.RollingFileAppender log4j.appender.Appender-ID.file=log-dir/httpbind.log log4j.appender.Appender-ID.append=true|false log4j.appender.Appender-ID.maxBackupIndex=7 log4j.appender.Appender-ID.maxFileSize=max-log-file-size log4j.appender.Appender-ID.layout=org.apache.log4j.PatternLayout log4j.appender.Appender-ID.layout.ConversionPattern=log-entry-syntax |