Apache HTTP Server を Rational DOORS Web Access のリバース・プロキシーとして構成することができます。
リバース・プロキシー・サーバーは、追加のセキュリティー層を提供し、ネットワーク内の HTTP サーバーを保護し、Secure Sockets Layer (SSL) 要求のパフォーマンスを向上させます。
リバース・プロキシーを使用すると、後で必要に応じてデプロイメント・トポロジーを変更できます。
始める前に
- Rational DOORS Web Access をインストールしますが、Rational DOORS Web Access コンポーネントまたはサーバーは開始しません。
- Apache HTTP Server をインストールします。
このタスクについて
リバース・プロキシー・サーバーは、コンテンツ HTTP サーバーに対する直接アクセスを防ぐ、特殊な HTTP サーバーです。
コンテンツに対する要求はすべて、パブリックに可視であるリバース・プロキシー・サーバー URI を経由し、プライベート Rational DOORS Web Access サーバー URI にリダイレクトされます。
リバース・プロキシー・サーバーを使用すると、以下のような利点があります。
- 将来のデプロイメント・トポロジーの変更: デプロイメントでリバース・プロキシーを使用すると、アプリケーションがデプロイされるマシン数やポート番号には無関係に、単一のホスト名をパブリック URL に指定できます。
その結果、後でデプロイメント・トポロジーを変更することが可能になります。
- セキュリティー: リバース・プロキシー・サーバーは、追加のセキュリティー層を提供し、通信ネットワーク内の他の HTTP サーバーを保護することができます。
リバース・プロキシー・サーバーとコンテンツ HTTP サーバーとの間でファイアウォールを使用している場合は、リバース・プロキシー・サーバーからの HTTP 要求のみを許可するようにファイアウォールを構成できます。
- パフォーマンス: SSL 要求のパフォーマンスを向上させる SSL 加速ハードウェアをリバース・プロキシー・サーバーに装備することができます。
この手順では、以下を行います。
- SSL 鍵ストアを準備します。
- httpd.conf ファイルおよび httpd-ssl.conf ファイルを変更します。
- Apache HTTP Server を始動します。
- Rational DOORS Web Access コンポーネントを始動します。
- Rational DOORS Web Access サーバーを始動します。
手順
- SSL 鍵ストアを準備します。
- 提供されている IBM Key Management Utility (IKeyMan) SSL ツールで SSL 鍵ストアを作成するか、開きます。
- 鍵ストアの保存時に、パスワードを stash ファイルに保存するオプションを選択します。
- 以下の情報を記録します。
- デフォルト SSL 証明書ラベル
- 鍵ストア・ファイルへのパス
- stash ファイルへのパス
- httpd.conf ファイルを編集して、SSL 要求を処理するように Apache HTTP Server を構成します。
このファイルは、Apache インストール済み環境内の conf ディレクトリーにあります。
- 以下のモジュールのコメントを外します。
- LoadModule proxy_module modules/mod_proxy.so
- LoadModule proxy_ajp_module
modules/mod_proxy_ajp.so
- LoadModule proxy_http_module modules/mod_proxy_http.so
- LoadModule ssl_module modules/mod_ssl.so
- #Secure (SSL/TLS) connections で始まる、SSL 構成セクションに進みます。
- このセクションで、以下の項目を追加します。
#
# reverse proxy
#
SSLProxyEngine On
ProxyPreserveHost On
- ホスト・ドメインを識別するための項目を追加します。
ProxyPass / https://host_domain:DWA_Tomcat_port/
ProxyPassReverse / https://host_domain:DWA_Tomcat_port/
例えば、次のように指定します。ProxyPass / https://private_host.com:7443/
ProxyPassReverse / https://private_host.com:7443/
注: この例では、エンド・ユーザーに対して可視であるプロキシー・ポートは 8443 に設定されており、プロキシー要求は private_host サーバー上のポート 7443 にリダイレクトされます。
ご使用の環境に応じて、プロキシー・サーバーと Apache Tomcat を構成する場合に使用対象となるポートは、ポート競合を避けるために別の値に設定される場合があります。
- 次の行のコメントを外します。
Include conf/extra/httpd-ssl.conf
リバース・プロキシーの構成について詳しくは、The Apache Software Foundation 資料の『Apache モジュール mod_proxy』を参照してください。
- Apache インストール済み環境内の /conf/extra ディレクトリーにある httpd-ssl.conf ファイルを編集します。
- SSL が構成されている対象のホスト名とポートを更新します。
- 以下を含め、必要に応じて設定を更新します。
- SSLCertificateFile
- SSLCertificateKeyFile
注: SSLCertificateKeyFile 鍵ファイルがパスワードで保護されている場合は、サーバーを始動するたびにパスワードを入力する必要があります。
パスワードは削除できますが、削除を行う前に、ご使用の環境でのセキュリティーに対する影響を考慮してください。
HTTP SSL ファイルの編集について詳しくは、The Apache Software Foundation 資料の『Apache コア機能』および『Apache Module mod_ssl』を参照してください。
- Apache HTTP Server を始動します。
エラーはすべて、Apache インストール済み環境の /logs フォルダーにある error.log ファイルに書き込まれます。
- Rational DOORS Web Access コンポーネントを始動します。
- Rational DOORS Web Access サーバーを始動します。
- 次の dbadmin コマンドを入力して、Rational DOORS Web Access パブリック URL およびポートをリバース・プロキシー・サーバーに設定します。
dbadmin -dwaHost reverse_proxy_url -dwaPort reverse_proxy_portnumber
dbadmin コマンドについて詳しくは、『Rational DOORS データベース・サーバーの構成』を参照してください。