ヘッダーをスキップ
Oracle Access Managerインストレーション・ガイド
10g(10.1.4.3)
B55482-01
  目次
目次
索引
索引

戻る
戻る
 
次へ
次へ
 

17 Apache v2ベースのWebサーバーのためのWebコンポーネントの構成

Oracle Access Managerでは、Apache v2のWebサーバーに対応するWebコンポーネント(ポリシー・マネージャ、WebPassおよびWebGate)を提供しています。これには、Apache、Oracle HTTP ServerおよびIBM HTTP Server(IHS)のWebコンポーネントが含まれます。

この章では、3種類のWebサーバーの構成を詳しく説明します。

17.1 Oracle HTTP ServerとOracle Access Managerについて

Oracle HTTP ServerのOracle Access Manager Webコンポーネント・パッケージ名には、次のようにOHSが使用されます。

次のOracle HTTP Serverのリリースでは、Oracle Access Managerと連動します。

Oracle HTTP Server 11g: Oracle HTTP Server 11gのOracle Access Manager Webコンポーネントは、他のWebサーバーのWebコンポーネントのように使用できます。さらに、Oracle Fusion Middleware 11gのエンタープライズ・レベルのシングル・サインオンを構成する場合、Oracle HTTP Server 11gのWebGateがキー・コンポーネントになります。詳細は、『Oracle Fusion Middlewareセキュリティ・ガイド』を参照してください。また、『Oracle Fusion Middleware Oracle HTTP Server管理者ガイド』も参照してください。

Oracle HTTP Server 10g(10.1.3.1.0): 2つのパッケージ(Apache v1.3ベースとApache v2.0ベース)が提供されます。Oracle Access ManagerのWebPass、ポリシー・マネージャおよびWebGateコンポーネントは、スタンドアロンOracle HTTP Serverにインストールできます。

OHS2の考慮点:

「Webサーバーの準備」で説明しているOracle HTTP Server Webコンポーネントの要件を確認してください。

17.2 ApacheおよびIHS v2 WebコンポーネントでのOracle Access Managerについて

Oracle Access Managerでは、Oracle HTTP Serverだけでなく、Apache v2 WebサーバーやIBM HTTP Serverにもコンポーネントが提供されます。IBM HTTP Server(IHS2)はApache v2の一種です。特に明記しないかぎり、この後の情報は3種類すべてに適用されます。


注意:

最新のOracle Access Managerの動作保証は、次を参照してください。
http://www.oracle.com/technology/products/id_mgmt/coreid_acc/pdf/oracle_access_manager_certification_10.1.4_r3_matrix.xls

プラットフォーム固有の各インストール・パッケージでは、プレーンApacheモードとSSL対応Apacheモードの両方がサポートされています。ファイル名に含まれる数字の2は、このコンポーネントがApache v2に基づくことを示しています。次に例を示します。

AIX: Oracle_Access_Manager10_1_4_3_0_power-aix_IHS2_WebGate

Linux: Oracle_Access_Manager10_1_4_3_0_ linux_Apache2_WebGate

Solaris: Oracle_Access_Manager10_1_4_3_0_sparc-s2_Apache2_WebGate

Windows: Oracle_Access_Manager10_1_4_3_0_Win32_APACHE2_WebGate

以前のOracle Access Managerのリリースでは、プラットフォーム固有のインストール・パッケージはプレーン・モードとSSL対応モードに分かれていました。たとえば、プラットフォームごとに、APACHE_WebGateとAPACHESSL_WebGateのように2つのWebGateファイルが用意されていました。

これらのWebサーバーをサポートするためのOracle Access Managerコンポーネントの機能の変更はありません。Oracle Access Managerの認証は、HTTP Basic、フォームまたはSSLクライアント証明書を使用してWebGateを介して行われます。認証されたユーザーによるWebリソースの認可や、他のWebサーバーまたはアプリケーションとのシンプル・ドメインSSOまたはマルチ・ドメインSSOも、WebGateを介して行われます。


重要:

この章の情報はWebGateを中心に説明しています。ただし、ポリシー・マネージャ・コンポーネントおよびWebPassコンポーネントにも同じく適用されます。

17.2.1 Apache HTTPサーバーについて

Apache HTTPサーバーは、Apache Software FoundationのオープンソースHTTPサーバー・プロジェクトです。プロジェクトの目標は、現行のHTTP標準を満たす、セキュアで効率が高い拡張可能なサーバーとHTTPサービスを提供することです。

詳細は、「Apache v2アーキテクチャとOracle Access Managerについて」を参照してください。

17.2.2 IBM HTTP Serverについて

IBM HTTP Server(IHS)はApache v2の一種です。IBM HTTP Serverの一部は、Apache Groupによって開発されたソフトウェアに基づいています。IBM HTTP Serverコンポーネントには、OpenSSLプロジェクトで開発されたソフトウェアやEric Youngによって開発されたソフトウェアも含まれます。

「Apache v2アーキテクチャとOracle Access Managerについて」で説明したApacheアーキテクチャおよびOracle Access Managerの詳細はIHSにも適用されますが、次の例外があります。

  • 以前のバージョンのIHSでは、mod_ibm_ldapモジュールを使用するために別のIDSクライアントが必要でした。IHS powered by Apache v2.0.47ではこの要件はありません。

  • IHS v2.0.47はFIPS 140-2をサポートしています。FIPSのサポートはデフォルトでは無効になっています。FIPSサポートを有効にするには、SSLFIPSEnableディレクティブをhttpd.confファイルに追加します。FIPSサポートを無効にする場合も、同様にSSLFIPSDisableディレクティブを使用します。

  • AIXでは、IHS v2.0.47をインストールする前に適切なランタイム・ライブラリがインストールされていることを確認します。

たとえば、AIX 5.1では、IHS v2.0.47をインストールする前にxlC.rte 6.0ランタイム・ライブラリ(xlC.rte.6.0.0.0など)をインストールする必要があります。このライブラリは、SSLをインストールしてIHS v2で使用する場合にAIXに必要です。このライブラリは次のWebサイトからダウンロードできます。

     http://www-912.ibm.com/eserver/support/fixes/fcgui.jsp

17.2.3 ApacheとIBM HTTPリバース・プロキシ・サーバーについて

通常、リバース・プロキシは次の状況で使用されます。

  • ファイアウォールで保護されたサーバーにインターネット・ユーザーがアクセスできるようにする場合

  • いくつかのバックエンド・サーバーでロード・バランスを行う場合、または速度が遅いバックエンド・サーバーにキャッシングを提供する場合

  • いくつかのサーバーを同じURL空間に入れる場合

proxy_moduleは、ApacheおよびIHS powered by Apacheのプロキシやゲートウェイを実装します。クライアントには特別な構成は必要ありません。リバース・プロキシは通常のWebサーバーと変わりません。クライアントは、いつものように、リバース・プロキシのネームスペースにコンテンツをリクエストします。そのようなリクエストの送信先を決定するのがリバース・プロキシです。コンテンツが返されるときにはリバース・プロキシが発信元のように見えます。


重要:

proxy_moduleを使用して、FTP、CONNECT(SSL用)、HTTP/0.9、HTTP/1.0およびHTTP/1.1のプロキシ機能を実装できます。ただし、WebGateでサポートされるのはリバース・プロキシ機能のみです。

詳細は、「Apache v2 Webサーバーの要件」を参照してください。

17.3 Apache v2アーキテクチャとOracle Access Managerについて

Apache v2 Webサーバーは、スレッド・セーフのOracle Access Managerライブラリと互換性のある、マルチスレッドおよびマルチプロセスのハイブリッド・アーキテクチャを提供します。


重要:

特に明記しないかぎり、この説明の詳細すべては、Apache v2およびIHS v2 Webサーバー、ポリシー・マネージャ、WebPass、WebGateに同様に適用されます。

標準のモジュール・セットの他に、Apache v2 Webサーバーにはマルチプロセス・モジュール(MPM)が含まれています。これによって、コンピュータのネットワーク・ポートをバインドし、リクエストを受け入れて処理します。ApacheまたはIHS v2に対してOracle Access Managerコンポーネントをインストールする前に、次のように適切なMPMをサーバーにコンパイルしてアクティブ化する必要があります。

Apache v2 Webサーバーには、Apache Portable Runtime(APR)ライブラリが含まれています。これは、プラットフォーム固有の実装のためのインタフェースを提供ます。これにより、プラットフォームの種類にかかわらず同一ではないまでも予測可能な動作がAPI開発者に保障され、条件付きコンパイル#lfdefsのニーズが解消されます。下位互換性はinclude/apu_compat.hファイルでサポートされますが、Apache v2 APRの使用をお薦めします。

詳細は、Apache v2のドキュメントを参照してください。詳細は、「Oracle Access Manager WebコンポーネントのためのApacheまたはIHS v2のチューニング」を参照してください。

次の項で説明しますが、Apacheアーキテクチャは様々な方法でOracle Access Managerコンポーネントに影響しています。詳細は、「互換性とプラットフォームのサポート」を参照してください。

Apache v1.3およびv2に対してインストールされるWebPassの場合

Apache v1.3およびv2に対してインストールされるポリシー・マネージャの場合

IHS、Apache v1.3およびv2に対してインストールされるWebGateの場合

ApacheおよびIHS v2 Webサーバーの制限事項

Apache v2 Webサーバーの制限のため、Oracle Access Managerフォームベース認証スキーム用に構成されたプラグインは、次の状況では変数を渡すことができません。

次に例を示します。

<html>
<form name="myloginform" action="/access/...cgi" method="post">

17.4 互換性とプラットフォームのサポート

Oracle Access Manager WebGateは、インストール内の1つのWebGateとすることも、他のWebサーバーのWebGateと混在させることも可能です。詳細は、「アクセス・システムのガイドライン」を参照してください。

「動作保証要件の確認」で説明されているように、次のURLのOracle Technology Networkから最新の動作保証のマトリクスを入手できます。

http://www.oracle.com/technology/products/id_mgmt/coreid_acc/pdf/oracle_access_manager_certification_10.1.4_r3_matrix.xls

17.5 Oracle HTTP Server、IHSまたはApache v2 Webサーバーの要件

Oracle Access ManagerのHTMLページではUTF-8エンコーディングが使用されます。ApacheベースのWebサーバー(Apache、Oracle HTTP Server、IBM HTTP Server(IHS)など)では、管理者がAddDefaultCharsetディレクティブを使用して、送出されるすべてのHTMLページのデフォルト・キャラクタ・セットを指定できます。このディレクティブは、HTMLページを生成するアプリケーションで指定されるすべてのキャラクタ・セットよりも優先されます。AddDefaultCharsetディレクティブでUTF-8以外のキャラクタ・セットを有効にすると、Oracle Access ManagerのHTMLページが文字化けします。

Oracle Access ManagerのHTMLページを正しく表示するには、AddDefaultCharsetディレクティブをWebサーバー構成ファイル(httpd.conf)に次のように指定することをお薦めします。

     AddDefaultCharset Off

このディレクティブの詳細は、Webサーバーのドキュメントを参照してください。

次の項目では、注意する必要があるその他の事項について説明します。


重要:

特に明記しないかぎり、ここに示す情報は、WebPass、ポリシー・マネージャおよびWebGateコンポーネントに同じように適用されます。

17.5.1 IHS2 Webサーバーの要件

ここでは、Oracle Access ManagerのためのIHS v2固有の要件を説明します。IHS v2では、バイナリを得るためにソース・コードをコンパイルすることはありません。ただし、次の要件がIHS v2 Webサーバーに適用されます。

17.5.2 ApacheおよびIHS v2リバース・プロキシ・サーバーの要件

前に説明したように、proxy_moduleによってプロキシやゲートウェイが実装されます。クライアントには特別な構成は必要ありません。proxy_moduleを使用して、FTP、CONNECT(SSL用)、HTTP/0.9、HTTP/1.0およびHTTP/1.1のプロキシ機能を実装できますが、特定のOracle Access Manager ApacheおよびIHS v2 WebGateではリバース・プロキシ機能しかサポートされません。詳細は、「互換性とプラットフォームのサポート」を参照してください。

Apache Webサーバーの場合: Oracle Access Managerでリバース・プロキシ機能を使用するには、構成コマンドにプロキシ・モジュールを含める必要があります。次に例を示します。

--enable-proxy: Apacheプロキシ・モジュール

--enable-proxy-connect: ApacheプロキシCONNECTモジュール

--enable-proxy-ftp: ApacheプロキシFTPモジュール

--enable-proxy-http: ApacheプロキシHTTPモジュール

また、mod_proxyモジュールとmod_proxy_httpモジュールをサーバーに動的にロードする必要があります。リバース・プロキシをアクティブ化するには、ProxyPassディレクティブ、またはRewriteRuleディレクティブの[P]フラグを使用します。

IHS Webサーバーの場合: IHS Webサーバーをインストールした後で、次のディレクトリにあるhttpd.confファイルのリバース・プロキシ構成を完了する必要があります。

IHS_install_dir/confディレクトリ

詳細は、「リバース・プロキシのアクティブ化」を参照してください。

17.5.3 Apache v2 Webサーバーの要件

ここでは、Oracle Access ManagerのためのApache v2固有の要件を説明します。詳細はApacheのドキュメントを参照してください。

PATH変数: UNIXシステムでは、Apache v2をコンパイルする前に、PATH変数にgccの場所を指定する必要があります。ただし、Sun Cコンパイラの場所はPATH変数に指定しないでください。Windowsシステムでは、コマンドライン・ツールまたはVisual Studio IDE Workbenchを使用してApacheを構築できます。コマンドラインでの構築には、PATH、INCLUDE、LIBおよびその他の変数に環境が反映されていることが必要です。これらは、vcvars32バッチ・ファイルで構成できます。

マルチプロセス・モジュール(MPM): Apache v2では、コンピュータのネットワーク・ポートをバインドし、リクエストを受け入れて処理するために、デフォルトのMPMが各プラットフォームに提供されています。Apacheは一度に1つのMPMを使用する必要があります。コンパイル時にMPMが選択されていない場合、デフォルトのMPMがWebサーバーにロードされます。コンパイル時にMPMをアクティブ化できます。

mod_ssl: Oracle Access Managerは、SSL対応通信の有無に関係なくApacheをサポートしています。ベースApache Webサーバーは、ブラウザ接続にはSSLを使用せず、HTTPSリクエストには応答しません。SSL対応通信では、Oracle Access Managerはmod_sslを含むApacheのみをサポートします。Oracle Access ManagerのSSL固有機能はApache-SSLでは作動しません。

mod_sslはOpenSSLに依存して、暗号エンジンを提供します。mod_sslはOpenSSLライブラリのインタフェースを提供します。OpenSSLライブラリは、Secure Sockets LayerプロトコルとTransport Layer Securityプロトコルを使用してStrong Encryptionを提供します。

以前のバージョンのApacheでは、mod_sslモジュールを個別にダウンロードしてサーバーにコンパイルする必要がありました。Apache HTTPサーバーv2の場合、モジュールmod_sslは、構成時に有効にできるロード可能なモジュールとして提供されています。

マルチスレッド: マルチスレッドは、Apache v1.3.27以上に対するWebPassのインストールに必要です。Apache v2対応のWebGateは、Apache 1.3.27以上のWebサーバーに対応するWebPass、ポリシー・マネージャおよびWebGateを含むOracle Access Managerインストールで使用できます。

動的共有オブジェクト(DSO): DSOのサポートはすべてのOracle Access Managerプラグイン(WebGateおよびWebPass)で必要です。基本的なコア・サーバー機能を拡張するApacheモジュールは、Apacheバイナリに永続的に組み込むために静的にコンパイルするか、動的にコンパイルして個別に格納し、実行時に再コンパイルせずにロードすることができます。Apache v1.3では、mod_soはコンパイルする必要がありました。WindowsシステムのApache v2では、mod_soはベース・モジュールであり必ず含まれています。UNIXのApache v2では、通常、ロードされるコードは共有オブジェクト・ファイルに含まれます。


注意:

動的にロードしたApache 1.3モジュールをApache v2で直接使用することはできません。Apache v2に動的にロードしたり、Apache v2にコンパイルしたりするには、Apache v1.3モジュールを変更する必要があります。

mod_perl: mod_perlによって、Perlプログラミング言語がApache Webサーバーに埋め込まれます。PerlがなくてもApache v2を構築してインストールできますが、Perlで記述されたサポート・スクリプトを使用できません。


注意:

Apache v.1.3.2xの場合、一部のオペレーティング・システムでは構成時に追加のオプションが必要でした。Apache v2を構築する場合、追加の変数を設定する必要はありません。

17.6 Webサーバーの準備

Oracle Access Manager Webコンポーネントのためにホスト・コンピュータを準備する方法と手順は、特定のWebサーバーおよびプラットフォームによって異なります。タスクの概要について次に説明します。

Oracle Access Managerでリバース・プロキシ機能を使用するには、「ApacheとIBM HTTPリバース・プロキシ・サーバーについて」で説明したように構成コマンドにプロキシ・モジュールを含める必要があります。「リバース・プロキシのアクティブ化」も参照してください。

タスクの概要: Webサーバーの準備とOracle Access Managerのインストール

  1. 次に説明するように、IHS v2 Webサーバーをインストールするか、Apache v2 Webサーバーをコンパイルしてインストールします。

  2. 必要であれば、「リバース・プロキシのアクティブ化」の説明に従ってリバース・プロキシ機能をアクティブ化します。

  3. このガイドの該当する項目の説明に従ってOracle Access Managerコンポーネントをインストールします。

  4. 「Oracle Access Manager Webコンポーネントに関するhttpd.conf更新の確認」の説明に従って、Webサーバーの構成を完了します。

  5. 必要に応じて、次の項を参照してください。


注意:

この後のすべての手順で、パス名の変数、モジュールおよびオプションは手順を説明するための例です。これらは環境によって異なります。詳細は、Webサーバーのドキュメントを参照してください。

17.6.1 IHS v2 Webサーバーの準備

IHS v2対応のWebGateを受け入れて使用するようにIHS v2 Webサーバーを準備するには、環境と要件によって異なりますが、次の1つ以上の手順を実行する必要があります。

適切な手順を完了すると、IHS v2対応WebGateをインストールできるようになります。

17.6.1.1 IHS v2インストールのためのホストの準備

IHS Webサーバーをインストールする前に、次の手順を実行してホスト・コンピュータを設定する必要があります。詳細は、「IHS2 Webサーバーの要件」「Apache v2 Webサーバーの要件」を参照してください。

この例ではAIX 5.1でのインストールを示します。これらは環境によって異なります。

IHS v2のインストールを準備する手順

  1. ホスト・コンピュータで、IBM Developer KitおよびJava Technology Edition version 1.4を次のサイトからダウンロードしてインストールします。

       http://www.ibm.com/java/jdk
    

    IBM Developer KitにはWebSphereアプリケーション・サーバーが含まれています。また、このサイトからWebSphereアプリケーション・サーバーをダウンロードすることもできます。

  2. ホスト・コンピュータで、次のサイトからAIX 5.1用のxlC.rte 6.0ランタイムをダウンロードしてインストールします。これはGSKit7ランタイム実行可能ファイルで必要になります。

       https://techsupport.services.ibm.com/server/aix.fdc
    
  3. ホスト・コンピュータに、IBM HTTP Serverインストール・イメージを圧縮解除するための新しいディレクトリを作成します。

  4. ホスト・コンピュータで、次のWebサイトからIBM HTTP Serverインストール・イメージをダウンロードします。

    http://www-306.ibm.com/software/webservers/httpservers/

  5. ホスト・コンピュータの新しいディレクトリでインストール・イメージを圧縮解除します。

    次に例を示します。

    tar -xf IHS.tar
    

    オペレーティング・システムによって異なりますが、次のようなファイル・リストが表示されます。

    gskit.sh
    setup.jar
    gskta.rte (a GSKit runtime executable for AIX)
    

    次の説明に従ってインストールを開始する準備ができました。

  6. 「IBM HTTP Server v2のインストール」に進みます。

17.6.1.2 IBM HTTP Server v2のインストール

この後の手順では、IBM HTTP Web Serverの典型的なインストールを、順を追って説明します。あるいは、サイレント・インストールの実行を選択することもできます。その場合、silent.resファイルをjava -jar setup.jar -silent -options silent.resコマンドで使用します。silent.resテキスト・ファイルを編集してサイレント・インストールのオプションをカスタマイズできます。すべてのオプションはデフォルトではtrueに設定されています。オプションを無効にする場合は値をfalseに設定します。

IBM HTTP Web Server powered by Apache v2をインストールする手順

  1. 前の例でコンピュータにインストールしたJava Technology Edition version 1.4を指すようにパスを設定します。次に例を示します。

       export PATH=$PATH:/usr/java14/java/bin
    
  2. インストール・イメージを圧縮解除したディレクトリで、次のコマンドを入力します。

       java -jar setup.jar
    
  3. インストールを実行する際の言語を選択します。

    「Welcome to the InstallShield Wizard for the IBM HTTP Server」が表示されます。

  4. 「次へ」をクリックして「ようこそ」画面を閉じます。

  5. ディレクトリ名を指定します。次に例を示します。

       AIX: /usr/IBMIHS/
    
  6. 「次へ」をクリックして続行します。

    標準、カスタムまたは開発者向けのインストール・オプションが表示されます。標準インストールを選択すると、組み込まれる内容すべてを含むリストとイメージのサイズが表示されます。カスタム・インストールを選択すると、コンポーネント・リストが表示されます。インストールしないコンポーネントは横のボックスからチェックを外します。

  7. 実行するインストールのタイプを選択して、「Next」をクリックします。次に例を示します。

       Typical
    

    次のメッセージが表示されます。「Cancel」をクリックしてインストールを停止できます。

       Installing IBM HTTP Server. Please wait.
    

    次のメッセージも表示されます。「Cancel」をクリックしてインベントリの更新を停止できます。

       Updating the inventory.
    
  8. 「Finish」をクリックしてインストールを完了します。

  9. 次のようにapachectlコマンドを使用して、IHSサーバーを停止して起動します。

    次に例を示します。

       IHS2_install_dir/bin
       ./apachectl stop
       ./apachectl start
    

    IHS2_install_dirは、IHS v2 Webサーバーをインストールしたディレクトリです。

IHS v2対応WebGateのインストールの前または後に、IHS v2 Webサーバーを次のモードで構成できます。

17.6.1.3 SSL機能の設定

SSL機能を設定する必要がある場合は、IHS v2対応WebGateのインストールの前または後に次の手順を実行します。

デフォルト構成ファイルを使用してIHS v2のSSLを設定する手順

  1. 次のファイルを探して開きます。

    IHS2_install_dir/conf/httpd.conf

  2. SSLEnableディレクティブを指定してSSLを有効にします。

  3. Keyfileディレクティブと、有効にするその他のSSLディレクティブを指定します。

  4. 次のようにIHSサーバーを停止してから起動します。次に例を示します。

       IHS2_install_dir/bin
       ./apachectl stop
       ./apachectl start
    

    IHS2_install_dirは、IHS v2 Webサーバーをインストールしたディレクトリです。

  5. 次の手順に進みます。

17.6.1.4 セキュアな仮想ホストの起動

セキュアな仮想ホストを起動する必要がある場合は、IHS v2対応WebGateのインストールの前または後に次の手順を実行します。

IHS v2のセキュアな仮想ホストを起動する手順

  1. 次のファイルを探して開きます。

       IHS2_install_dir/conf/httpd.conf
    

    IHS2_install_dirは、IHS v2 Webサーバーをインストールしたディレクトリです。

  2. SSLEnableディレクティブを構成ファイルの仮想ホスト・スタンザに指定して、仮想ホストのSSLを有効にします。

    仮想ホストには、キャッシュ・ディレクティブを除く任意のディレクティブを指定できます。

  3. Keyfileディレクティブと、この特定の仮想ホストで有効にするその他のSSLディレクティブを指定します。

  4. confファイルのLoadModuleディレクティブを使用してmod_ibm_ssl.soをロードします。

  5. 次のようにIHS仮想ホストを停止してから起動します。次に例を示します。

       IHS2_install_dir/bin
       ./apachectl stop
       ./apachectl start
    

    注意:

    SSL実装の起動と停止の指示は、SSLに対応しない実装の場合と同じです。

  6. 次の手順に進みます。

17.6.2 LinuxでのApacheおよびOracle HTTP Server Webサーバーの準備

Linux上のApacheまたはOracle HTTP Serverに対してOracle Access Managerコンポーネントをインストールするとき、Webサーバーを実行しているのと同じユーザーとしてインストールするように求められます。httpd.confファイルのUserおよびGroupディレクティブ・エントリを参照してください。

Red Hat Enterprise Linux 4で、ベンダーでバンドルされているApache v2に対してOracle Access Manager Webコンポーネントをインストールする場合は、すべてのOracle Access Manager WebコンポーネントがWebサーバーのユーザーとグループ(デフォルト: apache)に対してインストールされることを確認します。「Oracle Access Manager WebコンポーネントのためのApacheまたはIHS v2のチューニング」も参照してください。


注意:

Linuxの場合、Oracle HTTP Server 11gのOracle Access Manager WebコンポーネントではNPTLのみが使用されます。LinuxThreadsライブラリは使用できません。この場合、環境変数LD_ASSUME_KERNELを2.4.19に設定しないでください。

17.6.3 LinuxおよびWindowsプラットフォームでのOracle HTTP Server Webサーバーの準備

WindowsおよびLinuxプラットフォームでOracle HTTP Server v2に対してOracle Access Manager Webコンポーネントを使用する場合、httpd.confでPerlモジュールとPHPモジュールの両方をコメント化する必要があります。


注意:

Oracle HTTP Server 11gを使用する場合、どのプラットフォームでもOracle Access Manager Webコンポーネントのモジュールをコメント化する必要はありません。

17.6.4 Oracle HTTP Serverクライアント証明書の設定

cert_decodeおよびcredential_mappingプラグインを使用するときは、+EarlierEnvVars+ExportCertDataをOracle HTTP Server Webサーバー構成ファイルの既存のSSLオプションに追加して、アクセス・システム・クライアント証明書の認証スキームが、SSL対応Oracle HTTP Serverで適切に作動することを確認する必要があります。次に例を示します。

credential_mapping:

     obMappingBase="o=company,c=us",obMappingFilter=
     "(&(objectclass=InetOrgPerson)(mail=%certSubject.E%))"

ssl.confに次のオプションを指定する必要があります。

   SSLOptions +StdEnvVars +ExportCertData +EarlierEnvVars

sslオプションをOracle HTTP Serverに追加する手順

  1. Oracle HTTP Server Webサーバーの構成ファイルを探して、テキスト・エディタで開きます。次に例を示します。

    $ORACLE_INSTANCE/ohs/conf/ssl.conf

  2. ssl.confファイルの既存のSSLオプションに次の情報を追加します。次に例を示します。

       SSLOptions +StdEnvVars +ExportCertData +EarlierEnvVars
    
  3. ファイルを保存してWebサーバーを再起動します。

17.6.5 UNIXでのApache v2 Webサーバーの準備

ここでは、UNIXプラットフォーム(Solaris、UNIX、Linux、AIXなど)でのOracle Access ManagerのためのApache v2 HTTP Webサーバーの準備の概要と手順について説明します。「AIXでのApache v2 SSL Webサーバーの準備」も参照してください。

Apache v2は、プレーンまたはSSL対応として構成、構築およびインストールが可能です。Apacheソース・ファイルをダウンロードして抽出した後で、スクリプト(UNIXでは構成スクリプト、Windowsではmakeスクリプトmakefile.win)を使用して環境に応じたソース・ツリーをコンパイルします。


注意:

プラットフォームに関係なく基本要件は同じです。ただし、この後の説明と手順ではUNIXプラットフォームを中心に扱います。詳細は、「AIXでのApache v2 SSL Webサーバーの準備」も参照してください。

UNIXプラットフォームでApache v2を構成するときは、./configureコマンドの-prefix=オプションを使用してインストール・ディレクトリのパス名を指定します。構成時に環境に適したモジュールを有効にできます。たとえば、動的モジュールをコンパイルに含めると、mod_soが自動的にサーバーに組み込まれます。ただし、構成コマンドに-enable-soオプションを含めて、サーバーがDSOをロードできるようにしてください。複数のPerlインタプリタをインストールしている場合、-with-perlオプションを指定して、構成時に正しいインタプリタが選択されるようにできます。

構成コマンドには、mod_sslを有効にしてMPMをアクティブ化するオプションも含めることができます。構成の後で、./httpd -lを使用してサーバーにコンパイルされたすべてのモジュールをリストし、選択されたMPMを確認できます。

Apacheの構成が終了したら、makeコマンドを使用してApacheパッケージを形成する様々な部品を構築し、構成時に-prefix=オプションで指定したインストール・ディレクトリにパッケージをインストールします。

手順と例は、次の手順とApacheのドキュメントを参照してください。

この後の手順で、パス名の変数、モジュールおよびオプションは手順を説明するための例です。これらは環境によって異なります。詳細は、Webサーバーのドキュメントを参照してください。Apache v2.0.48とv2.0.52で構築手順に違いはありません。

UNIXでプレーンApache v2を準備する手順

  1. 適切なコンパイラや構築ツールに関して、環境がApacheの要件を満たしていることを確認します。次のWebサイトにあるApacheドキュメントを参照してください。

    http://httpd.apache.org/docs-2.0/install.html#requirements
    

    注意:

    Apache v2とOracle Access Managerプラグインでサポートされるコンパイラのバージョンに関してわかっている制限はありません。Apacheのドキュメントを参照してください。

  2. Apacheドキュメントの説明に従って、変更されていない完全なバージョンのApache HTTPサーバーv2をダウンロードします。次に例を示します。

    http://httpd.apache.org/download.cgi
    

    注意:

    必要であればPerlをダウンロードしてください。

  3. Apacheドキュメントの説明に従って、tarballからソース・ファイルを抽出します(圧縮解除してからuntarを実行)。次に例を示します。

       gzip -d httpd-2_0_48.tar.gz
       tar -xvf httpd-2_0_48.tar
    

    Apacheソース・ツリーの構成例として次の手順を使用できます。UNIX上のApacheをWebGateのmpm_worker_moduleとコンパイルする場合は、「UNIX上のApache v2とWebGate用のmpm_worker_module」を参照してください。


    注意:

    Oracle Access Managerでリバース・プロキシ機能を使用するには、「ApacheとIBM HTTPリバース・プロキシ・サーバーについて」で説明したように構成コマンドにプロキシ・モジュールを含める必要があります。

  4. Apacheソースを構築するために適切なパスに正しいバージョンのGNU gccライブラリが設定されていることを確認してください。gccライブラリはPATHで次のように設定する必要があります。

    export PATH=/usr/local/packages/gcc-3.4.6/bin:$PATH
    
  5. Apacheドキュメントの詳細を参照して、Apacheソース・ツリーを構成し、必要なモジュールを有効化(すなわちアクティブ化)します。次に例を示します。

    cd apache_source_dir
    ./configure --with-mpm=prefork --prefix=apache_install_dir --with-included-apr
    ./configure --with-mpm=worker --prefix=apache_install_dir --with-included-apr
    

    apache_source_dirはApacheを抽出したディレクトリ、apache_install_dirはApacheをインストールするディレクトリです。

  6. makeコマンドを使用して、構成したApacheパッケージをコンパイルします。次に例を示します。

       make
    
  7. 前に--prefix=オプションを使用して指定した構成済ディレクトリ・パスにApacheパッケージをインストールします。次に例を示します。

       make install
    
  8. Apacheドキュメントの指示に従ってインストールをカスタマイズします。

    たとえば、次の基本的な値を設定するためにhttpd.confをチューニングする必要があります。

       ServerName
       User/owner of the WebServer
       Group
    

    注意:

    すべての値のリストを表示するには、./configure --helpコマンドを使用します。

  9. Apache Webサーバーを停止してから再起動し、apache_install_dir/binディレクトリでコマンドを使用してインストールをテストします。次に例を示します。

       ./apachect1 stop
       ./apachectl start
    
  10. 環境に応じて次の適切なタスクに進みます。

次の手順では、UNIXでのSSL対応Apache v2 Webサーバーの準備方法を説明します。Apache mod_sslはロード可能ですが、このインストールではSSL/TLS用のOpen Sourceツールキットが必要です。ここでも、必要であればPerlをダウンロードしてください。使用しているプラットフォームがAIXの場合は、「AIXでのApache v2 SSL Webサーバーの準備」で詳細を確認してください。

UNIXでSSL対応Apache v2を準備する手順

  1. 適切なコンパイラや構築ツールに関して、環境がApacheの要件を満たしていることを確認します。次のWebサイトにあるApacheドキュメントを参照してください。

    http://httpd.apache.org/docs-2.0/install.html
    
  2. Apacheドキュメントの説明に従って、変更されていない完全なバージョンのApache HTTPサーバーv2とOpen Sourceをダウンロードします。

    http://httpd.apache.org/download.cgi
    http://www.openssl.org/
    
  3. Apacheドキュメントの説明に従って、tarballからソース・ファイルを抽出します(圧縮解除してからuntarを実行)。次に例を示します。

       gzip -d httpd-2_0_48.tar.gz
       tar -xvf httpd-2_0_48.tar
       gzip -d openssl-0_9_6f.tar.gz
       tar -xvf openssl-0_9_6f.tar
    
  4. Apacheドキュメントの説明に従ってOpenSSLソース・ツリーを構成します。次に例を示します。

       cd openssl_source_dir
       ./config -fPIC --prefix=openssl_install_dir
    

    openssl_source_dirはOpenSSLを抽出したディレクトリ、openssl_install_dirは構成済OpenSSLパッケージをインストールするディレクトリです。

  5. makeコマンドと--prefix=オプションを使用して構成したインストール・ディレクトリにOpenSSLパッケージをコンパイルします。次に例を示します。

       make
    
  6. make testコマンドを発行して、OpenSSLのサニティ・テストを行い、必要なツールの正しいバージョンをチェックします。次に例を示します。

       make test
    
  7. 前に--prefix=オプションを使用して指定した構成済ディレクトリ・パスにOpenSSLパッケージをインストールします。次に例を示します。

       make install
    
  8. Apacheドキュメントの説明に従って、Apacheソース・ツリーを構成し、必要なモジュールを有効化(すなわちアクティブ化)します。次に例を示します。

    cd apache_source_dir ./configure --prefix=apache_install_dir
     --enable-so \ --with-mpm='prefork' --with-perl=perl_interpreter_path \
    --with-port=non_ssl_port --enable-ssl \ --with-ssl=openssl_install_dir
    

    apache_source_dirはApacheを抽出したディレクトリ、apache_install_dirはApacheをインストールするディレクトリ、openssl_install_dirは構成済OpenSSLパッケージをインストールしたディレクトリです。

  9. makeコマンドを使用してコンパイルを行い、--prefix=オプションを使用して構成したインストール・ディレクトリにApache SSL対応パッケージを構築します。次に例を示します。

       make install
    
  10. 前に--prefix=オプションを使用して指定した構成済ディレクトリ・パスにApache SSL対応パッケージをインストールします。次に例を示します。

       make install
    

    openssl_install_dir/bin/にあるopensslツールを使用してSSLを有効にするには、Apache v2サーバーの証明書を明示的に作成する必要があります。make certificateコマンドはApache v2では機能しません。

  11. OpenSSLドキュメントの説明に従って、openssl_install_dir/binディレクトリのOpenSSLツールを使用して証明書を作成します。"Common Name"は完全修飾されたホスト名であることに注意してください。

  12. Apacheドキュメントの指示に従ってインストールをカスタマイズします。

    • 次の基本的な値を設定するためにhttpd.confをチューニングします。

      ServerName
      User/owner of the WebServer
      `Group
      
    • 次の基本的な値を設定するためにssl.confをチューニングします。

       Listen 7000
       <VirtualHost _default_:7000>
       ServerName ps0733.persistent.co.in:7000
       SSLCertificateFile /home/qa/software/ws/apache/
       apache-2.0.48_ssl_7000/conf/ssl.crt/server.crt
       SSLCertificateKeyFile /home/qa/software/ws/apache?
       apache-2.0.48_ssl_7000/conf/ssl.key/server.key
      
  13. Apache Webサーバーを停止してから再起動し、apache_install_dir/binディレクトリでコマンドを使用してインストールをテストします。次に例を示します。

       ./apachectl stop
       ./apachectl startssl
    
  14. 次の適切な手順に進みます。

17.6.6 AIXでのApache v2 SSL Webサーバーの準備

Apache v2 SSL Webサーバーを構築するとき、OpenSSLライブラリlibssl.aのシンボルがApacheのhttpd実行可能ファイルにエクスポートされます。Oracle Access Managerで必要なOpenSSLライブラリのシンボルを次に示します。

  • SSL_get_peer_certificate( )

  • i2d_X509( )

AIXプラットフォームでのリンクとバインドの際に、未使用すなわち未参照のシンボルは削除されます。このため、Oracle Access Managerで必要なこの2つのシンボルはhttpd実行可能ファイルには含まれません。

openssl-0.9.7dを使用してAIXでコンパイルを行う必要があります(openssl-0.9.7eはAIXではコンパイルを行いません)。残りの手順はUNIXopenssl-0.9.7dの場合と同じです。

クライアント証明書認証: クライアント証明書認証をAIXプラットフォームで使用している場合は、AIXでのdlsymの問題に適用する次のホット・フィックスが含まれるAIX 5.2 Maintenance Level 4を使用してください。

http://www-1.ibm.com/support/docview.wss?uid=isg1IY63366

Apache v2のためにAIXプラットフォームを準備する手順

  1. AIXプラットフォームが、「動作保証要件の確認」で説明したOracle Access Managerのシステム要件を満たすことを確認します。

  2. 詳細は「UNIXでのApache v2 Webサーバーの準備」を参照してください。また、Apache v2 Webサーバーを構築するときは、次のようにします。

    • openssl-0.9.7dを使用して、AIXのためにWebサーバーをコンパイルします。

    • 次のようにmakeコマンドを使用します。

      make MFLAGS=EXTRA_LDFLAGS='-Wl,-bE:OpenSSL_Symbols.exp'
      

OpenSSL_Symbols.expは、必要な2つのシンボルを含むファイルです。シンボルは、このようにエクスポート・ファイルを使用してエクスポートする必要があります。


注意:

AIXでは、-bnog(シンボルのガベージ・コレクションを抑止する)、-bexpal(すべてのシンボルをエクスポートする)および-uSymbolName(特定の1つのシンボルをエクスポートする)の方法ではシンボルをエクスポートしないでください。

17.6.7 WindowsでのApache v2 Webサーバーの準備

次に、WindowsでのApache v2のインストールと構成の方法に関して、UNIXでのApache v2とどのように異なるかを示します。詳細は、Apacheのドキュメントを参照してください。

インストール時: Apacheは、選択したインストール・ディレクトリを反映するように\confサブディレクトリのファイルを構成します。このディレクトリに構成ファイルがすでに存在する場合は、対応するファイルの新しいコピーが拡張子.ORIGとして作成されます。たとえば、\conf\httpd.conf.ORIGとなります。

インストール後: Apacheが\confサブディレクトリのファイルを使用して構成されます。これらはUNIXバージョンの構成に使用されるのと同じファイルです。ただし、わずかに違いがあります。

\confサブディレクトリの構成ファイルを編集し、環境に合せてApacheをカスタマイズする必要があります。これらのファイルはインストール時に構成されます。Apacheはインストール・ディレクトリから実行する準備が整っています。このとき、ドキュメント・サーバーはサブディレクトリhtdocsから実行できます。Apacheの使用を開始する前に多くのオプションを設定する必要があります。たとえば、Apacheはポート80でリスニングしますが、これは、構成ファイルのListenディレクティブを変更した場合や現行ユーザーのみにApacheをインストールした場合を除きます。

マルチスレッド: Windows対応のApacheはマルチスレッドです。つまり、UNIXの場合のように各リクエストに個別のプロセスを使用することはありません。また、通常は2つのApacheプロセスのみが実行しています。親プロセスとリクエストを処理する子プロセスです。子プロセス内では各リクエストが個別のスレッドで処理されます。

UNIX形式の名前: Apacheの内部ではUNIX形式の名前が使用されます。ファイル名を引数として受け取るディレクティブでは、UNIXファイル名ではなくWindowsファイル名を使用する必要があります。ただし、円記号ではなくスラッシュを使用してください。ドライブ名は使用できます。ただし、ドライブ名を省略すると、Apache実行可能ファイルのあるドライブとみなされます。

LoadModuleディレクティブ: Windows対応Apacheには、サーバーを再コンパイルせずに実行時にモジュールをロードする機能が含まれています。Apacheを普通にコンパイルすると、いくつものオプション・モジュールが\Apache2\modulesディレクトリにインストールされます。これらのモジュールまたは他のモジュールをアクティブ化するには、LoadModuleディレクティブを使用する必要があります。たとえば、ステータス・モジュールをアクティブ化するには、次のように指定します(この他に、access.confでstatus-activatingディレクティブを使用します)。

LoadModule status_module modules/mod_status.so

UNIXでは、ロードされるコードは通常は共有オブジェクト・ファイル(拡張子.so)に含まれますが、Windowsでは.soまたは.dll拡張子になります。

プロセス管理ディレクティブ: これらのディレクティブもWindows対応のApacheでは異なります。

エラー・ログ: Apacheの起動時には、すべてのエラーがWindowsイベント・ログに記録されます。これは、error.logファイルのバックアップになります。詳細は、Apacheのドキュメントを参照してください。

Apache Service Monitor: ApacheにはApache Service Monitorユーティリティが含まれています。これにより、ネットワークのすべてのコンピュータで、インストールされているすべてのApacheサービスの状態を表示および管理できます。Apacheサービスをモニターで管理するには、まずこのサービスをインストールする必要があります。ApacheはWindows上のサービスとして実行できます。詳細は、Apacheのドキュメントを参照してください。

起動、再起動、停止: Apacheをサービスとして実行することをお薦めします。通常、Apacheサービスの起動、再起動および停止は、Apache Service Monitorや、NET START Apache2、NET STOP Apache2などのコマンドを使用して行います。標準のWindowsサービス管理も使用できます。

apacheコマンドを使用してコマンドラインからApacheを操作できます。起動して実行しているApacheを停止するには、[Ctrl]を押しながら[C]を押します。インストール時に「スタート」メニューからApacheを実行することもできます。


注意:

[Ctrl]と[C]を同時に押すと、Apacheは現行の操作を終了したり正常にクリーンアップしたりすることができません。

Apacheサービス・アカウント: デフォルトでは、すべてのApacheサービスがシステム・ユーザー(LocalSystemアカウント)として実行するように登録されています。LocalSystemアカウントには、Windows保護メカニズムを介したネットワーク権限はありません。ただし、LocalSystemアカウントにはローカルの様々な権限があります。1つ以上のApacheサービスを実行するために別のアカウントを作成する方法の詳細は、Apacheのドキュメントを参照してください。

WindowsでApache v2を準備する手順

  1. 次のWebサイトにあるApacheドキュメントの説明を参照して、環境がApacheの要件を満たしていることを確認します。

    http://httpd.apache.org/docs-2.0/install.html
    

    Windowsでのインストールに対して、Apache v2をダウンロードできるHTTPおよびFTPミラーのリストがオンラインで提供されます。

    次の手順を完了したら、.msi拡張子が付いたWindows対応のApacheバージョンをダウンロードしてください。

  2. Apacheドキュメントの説明に従って、変更されていない完全なバージョンのApache HTTPサーバーv2(およびOpenSSL)をダウンロードします。次に例を示します。

    http://httpd.apache.org/download.cgi
    http://www.openssl.org/
    
  3. Apacheドキュメントの説明に従って、Apache v2をインストールします(ダウンロードした.msiファイルを実行し、要求される情報を指定します)。

  4. .default.confファイルを探し、新しい設定を確認し、必要であれば既存の構成ファイルを更新します。

  5. コンソール・ウィンドウで、またはサービスとして、Apacheを起動します。

  6. ブラウザを起動し、次のURLを入力してサーバーに接続し、デフォルト・ページにアクセスします。次に例を示します。

    http://localhost/
    

    「welcome」ページとApacheマニュアルへのリンクが表示されます。表示されない場合は、logsサブディレクトリのerror.logファイルを調べてください。

    基本インストールが機能するようになったら、\confサブディレクトリのファイルを編集してインストールを適切に構成する必要があります。

  7. Apacheドキュメントの説明に従って、環境に合うようにApacheインストールを構成します。

  8. カスタマイズした環境をテストします。

  9. 必要であれば次の手順に進みます。

17.7 リバース・プロキシのアクティブ化

Apache v2およびIHS v2 powered by Apache対応のWebGateでは、リバース・プロキシがサポートされます(アクティブ化を選択した場合)。リバース・プロキシ機能を実装する手順は環境によって異なります。

17.7.1 Apache v2 Webサーバーでのリバース・プロキシのアクティブ化

Oracle Access Managerのリバース・プロキシ機能を利用するには、Webサーバーの構成コマンドにApacheプロキシ・モジュールを含める必要があります。また、mod_proxyモジュールとmod_proxy_httpモジュールをサーバーに動的にロードする必要があります。リバース・プロキシをアクティブ化するには、ProxyPassディレクティブ、またはRewriteRuleディレクティブの[P]フラグを使用します。

リバース・プロキシ機能をアクティブ化するには、ProxyPassディレクティブ、またはRewriteRuleディレクティブの[P]フラグを使用します。リバース・プロキシを構成するためにProxyRequestsをオンにする必要はありません。リバース・プロキシを使用するとき(ProxyPassディレクティブでProxyRequests Offを指定)アクセス制御はそれほど重要ではなくなります。明確に構成したホストにしかクライアントが接続できないためです。プロキシへのアクセスは<Proxy>制御ブロックを使用して制御できます。

Apache v2 Webサーバーでリバース・プロキシをアクティブ化する手順

  1. 「ApacheとIBM HTTPリバース・プロキシ・サーバーについて」を確認します。

  2. 必要であれば、Apacheプロキシ・モジュールをWebサーバーの構成コマンドに含めます。

    次に例を示します。

    --enable-proxy
    --enable-proxy-connect
    --enable-proxy-ftp
    --enable-proxy-http
    

    詳細は、Apacheのドキュメントを参照してください。

  3. 次のように、ProxyPassディレクティブを使用するかRewriteRuleディレクティブの[P]フラグを使用して、リバース・プロキシをアクティブ化します。

            Reverse Proxy
            ProxyRequests Off
            <Proxy *>
             Order deny,allow
             Allow from all
            </Proxy>
            ProxyPass /foo http://foo.example.com/bar
            ProxyPassReverse /foo http://foo.example.com/bar
    
  4. 次のように、<Proxy>制御ブロックを使用してプロキシへのアクセスを制御します。

          <Proxy *>
           Order Deny,Allow
           Deny from all
           Allow from 192.168.0
          </Proxy>
    
  5. まだ実行していない場合は、「Oracle Access Manager Webコンポーネントのインストール」を実行します。

17.7.2 IHS v2 Webサーバーでのリバース・プロキシのアクティブ化

Webサーバーをインストールした後で、次の手順を実行します。

IHS v2 Webサーバーでリバース・プロキシをアクティブ化する手順

  1. 「ApacheとIBM HTTPリバース・プロキシ・サーバーについて」を確認します。

  2. 「IHS v2 Webサーバーの準備」の説明に従ってIHS v2 Webサーバーをインストールします。

  3. httpd.confファイルのDynamic Shared Objectセクションに、次の行を(コメント化せずに)組み込んでモジュールをロードします。

    IHS_install_dir/conf/httpd.conf

          LoadModule access_module modules/mod_access.so
          LoadModule auth_module modules/mod_auth.so
          LoadModule auth_dbm_module modules/mod_auth_dbm.so
          LoadModule include_module modules/mod_include.so
          LoadModule log_config_module modules/mod_log_config.so
          LoadModule env_module modules/mod_env.so
          LoadModule unique_id_module modules/mod_unique_id.so
          LoadModule setenvif_module modules/mod_setenvif.so
          LoadModule proxy_module modules/mod_proxy.so
          LoadModule proxy_connect_module modules/mod_proxy_connect.so
          LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
          LoadModule proxy_http_module modules/mod_proxy_http.so
          LoadModule mime_module modules/mod_mime.so
          LoadModule dav_module modules/mod_dav.so
          LoadModule autoindex_module modules/mod_autoindex.so
          LoadModule asis_module modules/mod_asis.so
          LoadModule info_module modules/mod_info.so
          LoadModule cgid_module modules/mod_cgid.so
          LoadModule dav_fs_module modules/mod_dav_fs.so
          LoadModule vhost_alias_module modules/mod_vhost_alias.so
          LoadModule dir_module modules/mod_dir.so
          LoadModule imap_module modules/mod_imap.so
          LoadModule actions_module modules/mod_actions.so
          LoadModule userdir_module modules/mod_userdir.so
          LoadModule alias_module modules/mod_alias.so
          LoadModule rewrite_module modules/mod_rewrite.so
    
  4. IfModule mod_proxy.cタグの下のディレクティブ--次の説明と例に基づいて確認します。

    • Allow条件とDeny条件が適切にコメント化されているかどうか。

      次に例を示します。

         <Proxy *>
            Order deny, allow
      #    Deny from all
            Allow from all
      #   Allow from .domain.com
      </Proxy>
      
    • 保護するURLが、ProxyPassディレクティブとProxyPassReverseディレクティブの両方に記述されているかどうか。

      次に例を示します。

      <IfModule mod_proxy.c>
      ProxyRequests Off
      ProxyPass /testproxy http://bedford: 8809/testrev/
      ProxyPassReverse /testproxy http://bedford: 8809/testrev/
      ProxyPass /test2 http://bedford: 8809/testrev/
      ProxyPassReverse /test2 http://bedford: 8809/testrev/
      
  5. httpd.confファイルを変更した場合はWebサーバーを再起動します。

  6. テスト: プロキシURLにアクセスするには、http://<proxy_host>:80/testproxy/にアクセスします。


    注意:

    テスト時には、URLの最後にスラッシュがあることを確認します。最後にスラッシュがないためにリソースにアクセスできないことがあります。


  7. リバース・プロキシ・サーバーでのSSLの有効化: IHSデフォルト・ページのドキュメントを使用します。

    たとえば、httpd.confファイルのDSOセクションのサンプルSSL設定では、ibm_ssl_moduleが次のようにロードされます。

       LoadModule ibm_ssl_module modules/mod_ibm_ssl.so
    
  8. 次のディレクティブをhttpd.confファイルに指定します。

       SSLEnable
          Keyfile /opt/IBMIHS/bin/key.kdb
          SSLClientAuth none
          SSLProxyEngine on
    
  9. サーバーを再起動します。

  10. WebサーバーのURLにアクセスし、ブラウザに証明書が与えられることを確認します。


    注意:

    Webサーバーをオープン・モードに戻すには、前のディレクティブをコメント化してサーバーを再起動します。

  11. key.kdb: key.kdbを生成するには、IHS_install_dir/binディレクトリにあるikeymanユーティリティを(できればGUIモードで)使用します。


    注意:

    ikeymanユーティリティではgsk7basユーティリティが使用されます。ただし、gsk7basには修正パックPQ83048を適用する必要があります。

  12. まだ実行していない場合は、「Oracle Access Manager Webコンポーネントのインストール」を実行します。

17.8 Oracle Access Manager Webコンポーネントのインストール

前に説明したように、オラクル社では、各プラットフォームの各Webコンポーネント用にインストール・パッケージを用意しており、それぞれのパッケージがプレーンとSSL対応両方のインストールを処理します。すべてのタイプのOracle Access Manager Webコンポーネントをデプロイで使用できます。

「動作保証要件の確認」で説明されているように、次のURLのOracle Technology Networkから最新の動作保証のマトリクスを入手できます。

http://www.oracle.com/technology/products/id_mgmt/coreid_acc/pdf/oracle_access_manager_certification_10.1.4_r3_matrix.xls

Oracle Access Manager Webコンポーネントのインストールを開始する前に、表17-1に示したすべての前提条件のタスクを完了していることを確認します。詳細は、このガイドの各章を参照してください。すべての前提条件を満たさない場合、インストールに悪影響を及ぼすことがあります。

表17-1 Oracle Access Manager Webコンポーネントのインストールの前提条件

確認 前提条件のタスク

「Webサーバーの準備」のすべてのアクティビティの実行


「リバース・プロキシのアクティブ化」のすべてのアクティビティの実行(環境別)


第2章「インストールの準備」のすべてのアクティビティの実行


この項に含まれる「タスクの概要: Oracle Access Managerのインストール」の確認


Oracle Access Managerコンポーネントのインストールは、すべてのプラットフォームとWebサーバーで類似しています。コンポーネントのインストール中に、Oracle Access ManagerのためのWebサーバー構成を自動更新するかどうかを確認された場合は、自動更新することをお薦めします。

タスクの概要: Oracle Access Managerのインストール

  1. Oracle Access Managerをインストールする前に、表17-1のすべての前提条件のアクティビティを実行します。

  2. アイデンティティ・サーバー: 第4章「アイデンティティ・サーバーのインストール」の説明に従って、プラットフォームに適したパッケージを調べてアイデンティティ・サーバーをインストールし、インストールが機能していることを確認します。

  3. WebPass: プラットフォームに適したインストール・パッケージを調べて、次のアクティビティを実行します。

  4. ポリシー・マネージャ: プラットフォームに適したインストール・パッケージを調べて、次のアクティビティを実行します。

  5. アクセス・サーバー: 第8章「アクセス・サーバーのインストール」の説明に従って、プラットフォームに適したインストール・パッケージを調べてアクセス・サーバーをインストールします。

  6. WebGate: プラットフォームに適したインストール・パッケージを調べて、次のアクティビティを実行します。

  7. Oracle Access Managerをインストールした後で、次のアクティビティを実行できます。

    • Oracle Access Manager IDおよび共通管理ガイド』で説明されているOracle Access Managerの構成。

    • Oracle Access Managerカスタマイズ・ガイド』で説明されているOracle Access Managerのカスタマイズ。

    • Oracle Access Manager統合ガイド』で説明されている統合の実行。

17.9 Oracle Access ManagerのためのWebサーバー構成の手動更新

Oracle Access ManagerのためのWebサーバー構成ファイルは自動で更新することをお薦めします。Oracle Access Managerのインストール時に、Webサーバー・インストールを自動的に更新するかどうかを確認されます。「いいえ」を選択した場合、これを手動で実行する必要があります。


注意:

Oracle Access Managerのインストール中に手動構成プロセスを起動した場合、Webブラウザの起動は省略してファイルを開くことができます(次に示すWebGate Webサーバーの手順で必要な場合)。

Oracle Access ManagerのためにWebサーバーを手動で構成する手順

  1. Webブラウザを起動し、必要に応じて次のファイルを開きます。次に例を示します。

    WebGate_install_dir/access/oblix/lang/langTag/docs/config.htm

    /WebGate_install_dirはWebGateをインストールしたディレクトリです。

  2. Webサーバーのリンクを選択します。

  3. 表示されるすべての指示に従い、Webサーバーの設定時に変更する必要があるすべてのファイルのバックアップ・コピーを作成して、やりなおす必要がある場合に利用できるようにします。

    設定によっては、新しいブラウザ・ウィンドウが起動されます。または、情報を入力するためにコマンド・ウィンドウを起動する必要があります。このため、元の設定指示に戻ってすべてを実行し、該当するOracle Access ManagerファイルをWebサーバーが認識できるようにします。


    注意:

    誤ってウィンドウを閉じた場合は、手順1に戻ってもう一度適切なリンクをクリックします。

  4. 「Oracle Access Manager Webコンポーネントに関するhttpd.conf更新の確認」に進みます。

17.10 Oracle Access Manager Webコンポーネントに関するhttpd.conf更新の確認

次の手順を実行して、ApacheまたはIHS v2のhttpd.confファイルにOracle Access ManagerのためのWebサーバー構成の更新が含まれていることを確認することをお薦めします。詳細は、次を参照してください。

IHS Webサーバーでリバース・プロキシに関してhttpd.confを更新するには、「IHS v2 Webサーバーでのリバース・プロキシのアクティブ化」を参照してください。Webサーバーに関してhttpd.confをカスタマイズするには、Webサーバーのドキュメントを参照してください。

17.10.1 WebPassの詳細の確認

ここでは、Oracle Access Managerに関する更新を行った後のhttpd.confファイルのWebPassセクションの例を示します。具体的な詳細は環境によって異なります。この例は、Oracle Access Managerに関してhttpd.confがどのように変わるかを説明するために示します。

httpd.confのWebPassエントリを確認する手順

  1. 更新されたhttpd.confファイルをWebPassのホスト・コンピュータで探します。

  2. httpd.confファイルを開いて、WebPassをプラットフォームにロードするセクションがあることを確認します。次に例を示します。

    # Note: Copy the following lines only if they do not already exist in your httpd.conf
    ##**** BEGIN Oblix NetPoint WebPass Specific ****
    include "/home/netpoint/703/wp/identity/oblix/.apacheconfig"
        LoadFile "/home/netpoint/703/wp/identity/oblix/lib/libgcc_s.so.1"
        LoadFile "/home/netpoint/703/wp/identity/oblix/lib/libstdc++.so.5"
    <IfModule mod_ssl.c>
        LoadModule OBWebPass_Module "/home/netpoint/703/wp/identity/oblix/apps/ webpass/bin/libwebpassssl.so"
    </IfModule>
    <IfModule !mod_ssl.c>
        LoadModule OBWebPass_Module "/home/netpoint/703/wp/identity/oblix/apps/ webpass/bin/libwebpass.so"
    </IfModule>
    obwebpassinstalldir "/home/netpoint/703/wp/identity"
        Alias /identity/oblix  "/home/netpoint/703/wp/identity/oblix/"
    <Directory "/home/netpoint/703/wp/identity/oblix/">
            DirectoryIndex index.htm index.html
        </Directory>
    <Location /identity/oblix/apps/asynch/bin/asynch.cgi>
            SetHandler asynch
        </Location>
    <Location /identity/oblix/apps/common/bin/common.cgi>
            SetHandler common
        </Location>
    <Location /identity/oblix/apps/corpdir/bin/corpdir.cgi>
            SetHandler corpdir
        </Location>
    <Location /identity/oblix/apps/admin/bin/corpdir_admin.cgi>
            SetHandler corpdiradmin
        </Location>
    <Location /identity/oblix/apps/admin/bin/front_page_admin.cgi>
            SetHandler front_pageadmin
        </Location>
    <Location /identity/oblix/apps/admin/bin/genconfig.cgi>
            SetHandler genconfig
        </Location>
    <Location /identity/oblix/apps/groupservcenter/bin/groupservcenter.cgi>
            SetHandler groupservcenter
        </Location>
    <Location /identity/oblix/apps/admin/bin/groupservcenter_admin.cgi>
            SetHandler groupservcenteradmin
        </Location>
    <Location /identity/oblix/apps/help/bin/help.cgi>
            SetHandler help
        </Location>
    <Location /identity/oblix/apps/lost_pwd_mgmt/bin/lost_pwd_mgmt.cgi>
            SetHandler lost_pwd_mgmt
        </Location>
    <Location /identity/oblix/apps/objservcenter/bin/objservcenter.cgi>
            SetHandler objservcenter
        </Location>
    <Location /identity/oblix/apps/admin/bin/objservcenter_admin.cgi>
            SetHandler objservcenteradmin
        </Location>
    <Location /identity/oblix/apps/querybuilder/bin/querybuilder.cgi>
            SetHandler querybuilder
        </Location>
    <Location /identity/oblix/apps/selector/bin/selector.cgi>
            SetHandler selector
        </Location>
    <Location /identity/oblix/apps/admin/bin/servcenter_admin.cgi>
            SetHandler servcenteradmin
        </Location>
    <Location /identity/oblix/apps/admin/bin/setup_admin.cgi>
            SetHandler setupadmin
        </Location>
    <Location /identity/oblix/apps/admin/bin/sysmgmt.cgi>
            SetHandler sysmgmt
        </Location>
    <Location /identity/oblix/apps/userservcenter/bin/userservcenter.cgi>
            SetHandler userservcenter
        </Location>
    <Location /identity/oblix/apps/admin/bin/wrsc_admin.cgi>
            SetHandler wrscadmin
        </Location>
    ##**** END Oblix NetPoint WebPass Specific ****
    

17.10.2 ポリシー・マネージャの詳細の確認

ここでは、Oracle Access Managerに関する更新を行った後のhttpd.confファイルのポリシー・マネージャ・セクションの例を示します。具体的な詳細は環境によって異なります。この例は、Oracle Access Managerに関してhttpd.confがどのように変わるかを説明するために示します。

httpd.confのポリシー・マネージャ・エントリを確認する手順

  1. 更新されたhttpd.confファイルをポリシー・マネージャのホスト・コンピュータで探します。

  2. httpd.confファイルを開いて、ポリシー・マネージャをプラットフォームにロードするセクションがあることを確認します。次に例を示します。

    #*** BEGIN Oblix NetPoint Access Manager Specific ****
    LoadFile "/home/netpoint/703/wp/access/oblix/lib/libgcc_s.so.1"
    LoadFile "/home/netpoint/703/wp/access/oblix/lib/libstdc++.so.5"
    LoadFile "/home/netpoint/703/wp/access/oblix/lib/libobnspr4.so"
    LoadFile "/home/netpoint/703/wp/access/oblix/lib/libobplc4.so"
    LoadFile "/home/netpoint/703/wp/access/oblix/lib/libobplds4.so"
    LoadFile "/home/netpoint/703/wp/access/oblix/lib/libobsoftokn3.so"
    LoadFile "/home/netpoint/703/wp/access/oblix/lib/libobnss3.so"
    LoadFile "/home/netpoint/703/wp/access/oblix/lib/libobssl3.so"
    LoadFile "/home/netpoint/703/wp/access/oblix/lib/libobldap50.so"
    LoadFile "/home/netpoint/703/wp/access/oblix/lib/libobprldap50.so"
    LoadFile "/home/netpoint/703/wp/access/oblix/lib/libobssldap50.so"
    Alias /access/oblix "/home/netpoint/703/wp/access/oblix/"
    <IfModule mod_ssl.c>
       LoadModule OBAccessManager "/home/netpoint/703/wp/access/oblix/lib/ webpluginsssl.so"
    </IfModule>
    <IfModule !mod_ssl.c>
       LoadModule OBAccessManager "/home/netpoint/703/wp/access/oblix/lib/ webplugins.so"
    </IfModule>
    obinstalldir "/home/netpoint/703/wp/access"
    <Location /access/oblix/apps/front_page/bin/front_page.cgi>
         SetHandler obfrontpage
    </Location>
    <Location /access/oblix/apps/common/bin/common.cgi>
         SetHandler obcommon
    </Location>
    <Location /access/oblix/apps/admin/bin/genconfig.cgi>
         SetHandler obgenconfig
    </Location>
    <Location /access/oblix/apps/admin/bin/sysmgmt.cgi>
         SetHandler obsysmgmt
    </Location>
    <Location /access/oblix/apps/admin/bin/setup_admin.cgi>
         SetHandler obsetupadmin
    </Location>
    <Location /access/oblix/apps/admin/bin/front_page_admin.cgi>
         SetHandler obfrontpageadmin
    </Location>
    <Location /access/oblix/apps/admin/bin/wrsc_admin.cgi>
        SetHandler obwrscadmin
    </Location>
    <Location /access/oblix/apps/help/bin/help.cgi>
        SetHandler obhelp
    </Location>
    <Location /access/oblix/apps/policyservcenter/bin/policyservcenter.cgi>
        SetHandler obpolicyservcenter
    </Location>
    #*** END Oblix NetPoint Access Manager Specific ****
    

17.10.3 WebGateの詳細の確認

ここでは、httpd.confファイルのWebGateセクションの例を示します。詳細は環境によって異なります。この例は、httpd.confがどのように変わるかを説明するために示します。

httpd.confのWebGateセクションを確認する手順

  1. 更新されたhttpd.confファイルをWebGateのホスト・コンピュータで探します。

  2. httpd.confファイルを開いて、WebGateをプラットフォームにロードするセクションがあることを確認します。

    次に例を示します。

    Windowsの場合

    #*** BEGIN Oblix NetPoint WebGate Specific ****
    <IfModule mod_ssl.c>
    LoadModule obWebgateModule "WebGate_install_dir\access\oblix\apps\webgate\bin\webgatessl.d ll"
          WebGateInstalldir "WebGate_install_dir"
          WebGateMode PEER
          </IfModule>
    <IfModule !mod_ssl.c>
    LoadModule obWebgateModule "WebGate_install_dir\access\oblix\apps\webgate\bin\webgate.dll"
          WebGateInstalldir "WebGate_install_dir"
          WebGateMode PEER
          </IfModule>
    <Location "\oberr.cgi">
    SetHandler obwebgateerr
          </Location>
          <LocationMatch "/*">
          AuthType Oblix
          require valid-user
          </LocationMatch>
    #*** END Oblix NetPoint WebGate Specific ****
    

    UNIXの場合

    #*** BEGIN Oblix NetPoint WebGate Specific ****
    LoadFile "/home/qa/netpoint/703/c1-copy/wg/access/oblix/lib/libgcc_s.so.1"
    LoadFile "/home/qa/netpoint/703/c1-copy/wg/access/oblix/lib/libstdc++.so.5"
    <IfModule mod_ssl.c>
       LoadModule obWebgateModule "/home/qa/netpoint/703/c1-copy/wg/access/oblix/ apps/webgate/bin/webgatessl.so"
    </IfModule>
    <IfModule !mod_ssl.c>
       LoadModule obWebgateModule "/home/qa/netpoint/703/c1-copy/wg/access/oblix/ apps/webgate/bin/webgate.so"
    </IfModule>
    WebGateInstalldir "/home/qa/netpoint/703/c1-copy/wg/access"
    WebGateMode PEER
    <Location /access/oblix/apps/webgate/bin/webgate.cgi>
    SetHandler obwebgateerr
    </Location>
    <Location "/oberr.cgi">
    SetHandler obwebgateerr
    </Location>
    <LocationMatch "/*">
    AuthType Oblix
    require valid-user
    </LocationMatch>
    #*** END Oblix NetPoint WebGate Specific ****
    

UNIXでの注意事項

HP-UXでApache v2を実行するときは、共有メモリーが機能しない場合があるため、UserまたはGroupについてnobodyを使用しないでください。かわりに、"Oblix"というGroupに対してUser Nameとしてログイン名を使用します(またはUser Nameとして"www"、Group Nameとして"others"を使用)。HP-UXの"www"はSolarisの"nobody"と同じです。

HPUX 11.11でApache v2を実行するときは、Apache httpd.confファイルのAcceptMutexディレクティブを"fcntl"に設定してください。このディレクティブがない場合は、httpd.confファイルに追加します(AcceptMutex fcntl)。詳細は、http://issues.apache.org/bugzilla/show_bug.cgi?id=22484を参照してください。

UNIXでの実装の詳細は、「ヒントとトラブルシューティング」を参照してください。

AIX上のIHSでの注意事項

#*** BEGIN Oblix NetPoint WebGate Specific ****
   LoadModule obWebgateModule DR/oblix/apps/webgate/bin/webgate.so
   WebGateInstalldir DR
   WebGateMode PEER
   <Location "/oberr.cgi">
      SetHandler obwebgateerr
   </Location>
   <LocationMatch "/*">
      AuthType Oblix
         require valid-user
   </LocationMatch>
#*** END Oblix NetPoint WebGate Specific ****
  1. chmod -r username:groupnameディレクトリ/ファイルを使用して、ディレクトリまたはファイルのユーザー名およびグループ名を変更します。

    このとき、httpd.confファイルのUserパラメータとGroupパラメータも同様に変更する必要があります。

  2. 詳細は、「Oracle Access Manager WebコンポーネントのためのApacheまたはIHS v2のチューニング」を参照してください。Apache v2対応のOracle Access Managerの実装を完了するために必要なその他の手順があれば実行します。


    重要:

    次の手順は、WebGate関連の変更をhttpd.confファイルから削除する必要がある場合のみ使用します。その後で、WebGateのためのApache v2 Webサーバーの構成を新たに実行します。

httpd.confの更新を新たに開始する手順

  1. 元のhttpd.confファイルをリストアして、存在するすべてのOracle Access Managerエントリを削除します。

  2. 次のいずれかの方法を使用してOracle Access Managerのためにhttpd.confファイルを更新します。

    • ファイルcomponent_install_dir/access/oblix/lang/LangTag/docs/config.htmを開き、「Oracle Access ManagerのためのWebサーバー構成の手動更新」の説明に従って手動構成を実行します。

    • component_install_dir/access/oblix/tools/setup/InstallTools/ManageHttpConfのManageHttpConfプログラムをオプションなしで起動して、使用方法の指示を表示します。


      注意:

      WebGateエントリがhttpd.confファイルに存在する状態でManageHttpConfプログラムを実行すると、エラー・メッセージが出力され、httpd.confファイルが更新されません。

  3. 「Oracle Access Manager WebコンポーネントのためのApacheまたはIHS v2のチューニング」のアクティビティを完了すると、次の作業を行えるようになります。

    • Oracle Access Manager IDおよび共通管理ガイド』で説明されているOracle Access Managerの構成。

    • Oracle Access Managerカスタマイズ・ガイド』で説明されているOracle Access Managerのカスタマイズ。

    • Oracle Access Manager統合ガイド』で説明されている統合の実行。

17.10.4 言語エンコーディングの確認

前に説明したように、Oracle Access Manager HTMLページではUTF-8エンコーディングが使用されます。ApacheベースのWebサーバーでは、管理者がAddDefaultCharsetディレクティブを使用して、送出されるすべてのHTMLページのデフォルト・キャラクタ・セットを指定できます。これは、HTMLページを生成するアプリケーションによるキャラクタ・セットの指定よりも優先されます。AddDefaultCharsetディレクティブでUTF-8以外のキャラクタ・セットを有効にすると、Oracle Access ManagerのHTMLページが文字化けします。

適切な言語エンコーディングを確認する手順

  1. httpd.confファイルを開きます。

  2. AddDefaultCharsetディレクティブを探します。

  3. 次のいずれかのアクティビティを実行して、Oracle Access Manager HTMLページの適切なエンコーディングを設定します。

    • AddDefaultCharsetディレクティブをOffに設定します。

    • AddDefaultCharsetディレクティブをコメント化します。

  4. httpd.confファイルを保存してWebサーバーを再起動します。

17.11 Oracle Access Manager WebコンポーネントのためのOracle HTTP Serverのチューニング

Oracle HTTP Serverに対してOracle Access Manager Webコンポーネントをインストールした後で、次の手順を実行する必要があります。

前に説明したように、Oracle HTTP Serverに対してOracle Access Manager Webコンポーネントをインストールする前に、コンポーネントをインストールするユーザーと一致するようにhttpd.confファイルでユーザーとグループを変更してください。


注意:

Linuxの場合、Oracle HTTP Server 11gのOracle Access Manager WebコンポーネントではNPTLのみが使用されます。LinuxThreadsライブラリは使用できません。この場合、環境変数LD_ASSUME_KERNELを2.4.19に設定しないでください。

Oracle Access Manager WebコンポーネントのためにOracle HTTP Serverをチューニングする手順

  1. 通常どおりにopmnを停止します。

  2. opmn.xmlファイルを探して、編集するために開きます。次に例を示します。

    $oracle_home/opmn/bin/opmn.xml

  3. opmn.xmlファイルで項目を次のように調整します。

    <ias-component id="HTTP_Server">
    <process-type id="HTTP_Server" module-id="OHS2">
             <environment>
                    <variable id="TMP" value="/tmp"/>
                    <variable id="LD_ASSUME_KERNEL" value="2.4.19"/>
             </environment>
              <module-data>
                <category id="start-parameters">
                  <data id="start-mode" value="ssl-disabled"/>
                </category>
              </module-data>
              <process-set id="HTTP_Server" numprocs="1"/>
            </process-type>
          </ias-component>
    
  4. 次のスクリプトを実行してOPMN構成をリフレッシュします。

    #oracle_home/opmn/bin/opmnctl reload
    
  5. ポリシー・マネージャのhttpd.confファイルで、次の行をコメントにします。

    Oracle HTTP Server 11g

    LoadModule perl_module libexec/libperl.so
    LoadModule php4_module libexec/libphp4.so
    

    Oracle HTTP Server v2

    #LoadModule perl_module modules/mod_perl.so
    #LoadModule php4_module modules/mod_php4.so
    
  6. 「Oracle HTTP Server Webサーバーの起動と停止」の説明に従って、Oracle HTTP Server Webサーバーを起動します。

17.12 Oracle Access ManagerのためのOracle HTTP Server、Apache PreforkおよびMPMモジュールのチューニング

これらのWebサーバーのOracle Access Manager Webコンポーネントでは、固有のチューニング・パラメータを使用することをお薦めします。

この項で説明されているチューニング・パラメータは、Apache v2.0およびOHS11gではhttpd.confファイルで構成します。

ただし、Apache v2.2では次のファイルでチューニングを構成します。

apache_install_dir/conf/extra/httpd-mpm.conf

apache_install_dir/conf/extra/httpd-default.conf

また、Apache v2.2では、次に示すようにhttpd-mpm.confおよびhttpd-default.confのエントリはコメント化しません。

変更前

#Include conf/extra/httpd-mpm.conf
#Include conf/extra/httpd-default.conf

変更後

Include conf/extra/httpd-mpm.conf
Include conf/extra/httpd-default.conf

環境に応じて次の項を使用します。

17.12.1 Oracle HTTP ServerまたはApache Preforkモジュールのチューニング

Oracle HTTP ServerまたはApache PreforkとともにOracle Access Managerを使用する場合、一般的なガイドラインとして次をお薦めします。

Timeout: 300

KeepAlive: On

MaxKeepAliveRequests: 500

KeepAliveTimeout: 10

StartServers: 5(最初に起動するプロセス数。起動時にのみ使用されます。)

MaxClients: 500(ピーク時に負荷を処理する合計プロセス数。これにより、ピーク時にリクエストを処理するために生成する子プロセス数が決定します。)

ServerLimit: 500(プロセスの存続期間を決定するためにMaxClientsごとに構成する最大値。MaxClientsにデフォルトより大きい値が設定されている場合、残りのパラメータに対してもServerLimitの値を指定する必要があります。)

MinSpareServers、MaxSpareServers: 通常、デフォルト値で十分に重い負荷を処理できます。動作中、リクエストを処理するために親プロセスによって子プロセスが生成されます。これらの値は、この生成方法を制御するために使用します。

MaxRequestsPerChild: 0 - 各子プロセスに送信するリクエスト数。0は、プロセスの期限切れや停止がないことを表しています。

17.12.2 Oracle HTTP ServerまたはApache MPMモジュールのチューニング

Oracle HTTP ServerまたはApache PreforkとともにOracle Access Managerを使用する場合、一般的なガイドラインとして次をお薦めします。

Timeout: 300

KeepAlive: On

MaxKeepAliveRequests: 500

KeepAliveTimeout: 10

StartServers: 2(最初に起動するプロセス数。起動時にのみ使用されます。)

MaxClients: 500(ピーク時に負荷を処理する合計プロセス数。これにより、ピーク時にリクエストを処理するために生成する子プロセス数が決定します。)

ServerLimit: 25(プロセスの存続期間を決定するためにMaxClientsごとに構成する最大値。MaxClientsにデフォルトより大きい値が設定されている場合、残りのパラメータに対してもServerLimitの値を指定する必要があります。)

MinSpareServers、MaxSpareServers: 25、75。動作中、リクエストを処理するために親プロセスによって子プロセスが生成されます。これらの値は、この生成方法を制御するために使用します。

ThreadsPerChild: 25(1つのhttpdプロセスのワーカー・スレッド数。)

MaxRequestsPerChild: 0(このディレクティブで、個々の子サーバー・プロセスが処理するリクエスト数の上限を設定します。この値を0に設定すると、プロセスは期限切れにならなくなります。)

17.12.3 カーネル・パラメータのチューニング

ファイル記述子に対する強い制限または弱い制限のカーネル・パラメータを高い値に設定することをお薦めします。次に例を示します。

強い制限(rlim_fd_max): 65535

弱い制限(rlim_fd_cur): 65535

リクエストのソケットを開いたり閉じたりするApacheサーバーの場合、ファイル記述子に高い値を設定することを強くお薦めします。

17.13 Oracle HTTP Server Webサーバーの起動と停止

Oracle HTTP Server Webサーバーの起動と停止は、v1.3とv2の両方ともすべてのプラットフォームで同じ手順です。

Oracle HTTP Server Webサーバーを起動する手順

  1. 次のディレクトリを探して移動します。

    $ORACLE_HOME\opmn\bin\

  2. コマンドラインで次のコマンドを入力します。

      opmnctl/startproc process-type=HTTP_Server
    

Oracle HTTP Server Webサーバーを停止する手順

  1. 次のディレクトリを探して移動します。

    $ORACLE_HOME\opmn\bin\

  2. コマンドラインで次のコマンドを入力します。

      opmnctl/stopproc process-type=HTTP_Server
    

17.14 Oracle Access Manager WebコンポーネントのためのApacheまたはIHS v2のチューニング

特に明記しないかぎり、次に示す情報は、ApacheおよびIHS v2の両方と、ポリシー・マネージャ、WebPassおよびWebGateコンポーネント(プラグイン)に適用されます。Oracle HTTP Serverの詳細は、『Oracle HTTP Server管理者ガイド』を参照してください。

セキュリティ強化LinuxにバンドルされているApache v2: SELinuxでは、Oracle Access Manager Webコンポーネントをインストールした後に、より厳密なSELinuxポリシーが設定されているLinuxディストリビューション上でWebサーバーを起動すると、WebServerのログまたはコンソールにエラーが表示される可能性があります。Webサーバーを再起動する前に、インストールされているWebコンポーネントに対して適切なchconコマンドを実行することで、このようなエラーを回避できます。


関連項目:

「SELinuxの問題」

Apache v2がバンドルされているSELinux対応のLinuxディストリビューション: セキュリティ強化Linux(SELinux)は、必須アクセス制御メカニズムが自動的に有効化される実装です。Linuxのドキュメントで説明されているように、SELinuxポリシーを使用すると、システム・デーモンに関する特定の定義済システム・ディレクトリ(/etc/httpd/conf、/usr/sbin/apachect、/var/log/など)にアクセスすることができます。

バンドル済Apache WebサーバーにOracle Access Manager Webコンポーネントをインストールした場合は、ApacheプロセスがOracle Access Managerインストール・ファイルにアクセスできるように、特定のポリシーを追加する必要があります。

バンドル済Apache Webサーバーは、セキュリティ・コンテキストがcontext=user_u:system_r:unconfined_tとして定義されたユーザー"apache"として実行します。この結果、Oracle Access Manager Webコンポーネントがいずれかのユーザー・フォルダにインストールされると、Apache Webサーバーは起動しません。

$SELINUX_SRC変数は、SELinuxポリシー・ソース・ディレクトリを表します。デフォルト値は/etc/selinux/targeted/src/policyです。ただし、実際の環境は異なる場合があります。システムの実際の値については、システム管理者に問い合せてください。

Oracle Access ManagerのポリシーをRed Hat Enterprise Linux 4バンドルのApacheに追加する手順

  1. 各Oracle Access Manager Webコンポーネントをインストールした後で、rootユーザーとしてログインします。

  2. すべてのOracle Access Manager WebコンポーネントがWebサーバーのユーザーとグループ(デフォルト: apache)に対してインストールされていることを確認します。

  3. oracle_access_manager.teポリシー・ファイルを$SELINUX_SRC/domains/programs/ディレクトリに作成し、次のルールを追加します。

    type oracle_access_manager_t, file_type, sysadmfile;
    allow httpd_t oracle_access_manager_t:file { rw_file_perms create rename
    link unlink setattr execute };
    allow httpd_t oracle_access_manager_t:dir  { rw_dir_perms create append
    rename link unlink setattr };
    
  4. oracle_access_manager.fcファイル・コンテキストをディレクトリ$SELINUX_SRC/file_contexts/programに作成し、Oracle Access Manager Webコンポーネントのインストール・ディレクトリを登録します(最後のidentityまたはaccessは含めない)。次に例を示します。

     Oracle_Access_Manager_install_dir(/.*)? system_u:object_r:oracle_access_
     manager_t
    

    注意:

    WebGateをAccess Managerと別のディレクトリにインストールした場合は、WebGateのインストール・ディレクトリを別に登録してください。

  5. 次のようにポリシー・ファイルをコンパイルしてデプロイします。

    cd $SELINUX_SRC
    make load
    Label Oracle Access Manager files
    run restorecon -R Oracle_Access_Manager_install_dir (without the identity or access suffix)
    

Apache v2のディレクティブ: Apache 1.3は、複数のHTTPリクエストを一度に処理するためにプロセス・モデルを使用します。これは、他のWebサーバーで採用されている、複数のリクエストを同時に1プロセスで管理するシングル・プロセス(スレッド)モデルとは異なります。Apache v1.3 WebサーバーおよびOracle Access Managerの詳細は、第16章「Oracle Access ManagerのためのApache v1.3ベースWebサーバーの構成」を参照してください。


注意:

Apache v2のプリフォークMPMのみが、Apache v1.3と同じプロセス・モデルを使用してHTTPリクエストを処理します。その他すべてのMPMでは、Apache v2はハイブリッド・プロセススレッド・モデルを使用します。

Apache v2 Webサーバー構成ファイル(httpd.conf)のいくつかのディレクティブは、Apache Webサーバーがワーカー・プロセスの作成または廃棄を決定する方法に影響します。次のパラメータはApache v2 Webサーバーのパフォーマンスに影響します。

ここで説明したパラメータの適切な値は、予期される負荷や関連するシステム(アクセス・サーバーやLDAPサーバーなど)のパフォーマンス・クラスによって異なります。

非常に高いパフォーマンスのシステムで高負荷が予想される場合は、ワーカー・プロセス数の制限を高くしてApacheサーバーを再コンパイルできます。このようなシステムでは、瞬間的な負荷の急上昇に対処する際に、StartServersパラメータやMinSpareServersパラメータによるパフォーマンスへの大きな影響を確認できます。

場合によっては、アクセス・サーバーを適切に運用できるようにオペレーティング・システムの制限を調整する必要があります。特に、1つのアクセス・サーバーで使用できるファイル記述子の最大数はデフォルト値よりも増やすことをお薦めします。各ApacheベースWebGateと1つのアクセス・サーバーの間に複数の接続を構成すると、すぐにデフォルト制限を上回ります。

詳細は、Apacheのドキュメントを参照してください。

17.15 アンインストール後のWebサーバー構成変更の削除

インストール中に行ったWebサーバー構成の変更は、Oracle Access Managerコンポーネント(WebPass、ポリシー・マネージャ、WebGate)をアンインストールしてから手動で削除する必要があります。このような情報は手動で削除する必要があります。

さらに、Oracle Access Managerコンポーネント(WebPass、ポリシー・マネージャ、WebGate)についてWebサーバー構成ファイルに手動で行ったすべての変更を削除する必要があります。各コンポーネントに追加される内容の詳細は、この章の他の項を参照してください。

17.16 ヒントとトラブルシューティング

詳細は、付録E「インストールの問題のトラブルシューティング」を参照してください。

17.17 ヘルプ情報

Oracle HTTP Serverの詳細は、次のマニュアルを参照してください。

『Oracle HTTP Server管理者ガイド』

次のURLでは、Apacheリリースの構築やソース・コードに関する情報が提供されます。

Apache v2ドキュメント:

http://httpd.apache.org/docs-2.0/

Apache v2ソース・コード:

http://httpd.apache.org/download.cgi

Mod-SSLドキュメント:

http://httpd.apache.org/docs-2.0/mod/mod_ssl.html

OpenSSLドキュメント:

http://www.openssl.org/docs/

OpenSSLソース・コード:

http://www.openssl.org/source/

Apache v2のコンパイルとインストール:

http://httpd.apache.org/docs-2.0/install.html#test

IHS:

http://www-306.ibm.com/software/webservers/httpservers/doc/v2047/manual/readme.html