ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Access Manager with Oracle Security Token Service管理者ガイド
11g リリース1 (11.1.1)
B62265-02
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

28 Apache、OHS、IHSの10g Webgate用の構成

Oracle Access Managerは、Apache v2により稼動するWebサーバー用のWebgateを提供しています。これにはApache、Oracle HTTP ServerおよびIBM HTTP Server (IHS)が含まれています。

この章では3つのWebサーバー・タイプの構成に関して次を含む詳細を説明します。

前提条件

Oracle Access Managerコンソールが稼動していること、および次の項目を理解していることを確認してください。

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 Access Manager Webgate Oracle HTTP Server 11gは、他のWebサーバー用のWebgateのように使用できます。さらに、このOracle HTTP Server 11g用Webgateは、Oracle Fusion Middleware 11g用にエンタープライズレベルのシングル・サインオンを構成する際の主要コンポーネントです。詳細は、『Oracle Fusion Middlewareセキュリティ・ガイド』を参照してください。『Oracle Fusion Middleware HTTP Server管理者ガイド 11gリリース1 (11.1.1)』も参照してください。

Oracle HTTP Server 10g (10.1.3.1.0): 2つのパッケージを提供しています(Apache v1.3ベースとApache v2.0ベース)。WebgateはスタンドアロンのOracle HTTP Serverにインストールできます。Oracleのシングル・サインオンへの統合を可能にするには、OHS2 WebgateをOracle Application Server上にインストールする必要があります。インストール中に、WebgateがOHS2上のモジュールとしてインストールされます。

「Webサーバーの準備」に記載されたOracle HTTP Server Webコンポーネント要件を必ず把握しておいてください。

ApacheおよびIHS v2 Webgateを使用した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

各プラットフォームに固有のインストール・パッケージは、プレーンおよび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基本認証、フォーム、またはSSLクライアント証明書を使用して、Webgateを介して行われます。認証済ユーザーによるWebリソースの許可、他のWebサーバーやアプリケーションとの簡易およびマルチドメインSSOもWebgateを介して行われます。

Apache HTTP Serverについて

Apache HTTP Serverは、Apache Software Foundationのオープン・ソースHTTP Webサーバー・プロジェクトです。プロジェクトの目的は、現在のHTTP標準に合った安全で効率のよい、拡張性のあるサーバーおよびHTTPサービスを提供することです。

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

IBM HTTP Serverについて

IBM HTTP Server (IHS)はApache v2のバリエーションです。IBM HTTP ServerはThe Apache Groupの開発したソフトウェアに基づいています。IBM HTTP Serverコンポーネントには、OpenSSL Projectが開発したソフトウェアおよびEric Youngが開発したソフトウェアも含まれています。

ApacheアーキテクチャとOracle Access Managerに関する「Apache v2アーキテクチャとOracle Access Managerについて」での説明は、次の点を除きIHSに適用されます。

  • IHSの旧バージョンでは、mod_ibm_ldapモジュールを使用するために別なIDSクライアントが必要でした。Apache v2.0.47稼動によるIHSではこれは不要になりました。

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

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

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

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

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サーバーの要件」を参照してください。

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

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


重要:

特に明記しないかぎり、ここに示す詳細な説明は、10g Webgate用のApache v2とIHS v2 Webサーバーに同様に適用されます。

標準モジュール・セット以外に、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 Webgate用のApache/IHS v2のチューニング」も参照してください。

Apacheアーキテクチャは次の項で説明しているように、別な方法でOracle Access Managerコンポーネントに影響を及ぼします。

IHSおよびApache v2にインストールされているWebgateの場合

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

Apache v2 Webサーバーの制限により、Oracle Access Managerのフォームベースの認証スキーム用に構成されたプラグインは次の場合に変数を渡しません。

例:

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

Oracle HTTP Server、IHS、Apache v2 Webサーバーの要件

Oracle Access Manager HTMLページではUTF-8エンコーディングを使用します。Apache、Oracle HTTP Server、およびIBM HTTP Server (IHS)を含むApacheベースのWebサーバーでは、管理者はAddDefaultCharsetディレクティブを使用して、送信されたすべてのHTMLページのデフォルト文字セットを指定できます。このディレクティブは、HTMLページを生成するアプリケーションによって指定された任意の文字を無効にします。AddDefaultCharsetディレクティブがUTF-8以外の文字セットを有効にした場合、Oracle Access Manager HTMLページで文字化けが発生します。

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

     AddDefaultCharset Off

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

次のトピックでは注意が必要な追加の詳細情報を提供します。

IHS2 Webサーバーの要件

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

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でリバース・プロキシ機能を使用するには、configureコマンドにプロキシ・モジュールを含む必要があります。次に例を示します。

--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ディレクトリ

詳細は、「Apache v2およびIHS v2のリバース・プロキシの起動」を参照してください。

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では同時に複数のMPMを使用することはできません。コンパイル中にMPMが選択されていない場合は、デフォルトがWebサーバーにロードされます。コンパイル中にMPMを起動できます。

mod_ssl: Oracle Access ManagerはSSL対応または非対応の通信機能を備えたApacheをサポートしています。基本のApache Webサーバーはブラウザ接続にSSLを使用せず、HTTPSリクエストに応答しません。SSL対応の通信用に、Oracle Access Managerはmod_ssl付きのApacheのみをサポートしています。SSL固有のOracle Access Manager機能は、Apache-SSLでは使用できません。

mod_sslは暗号化エンジンの提供をOpenSSLに依存しており、mod_sslがOpenSSLライブラリへのインタフェースを提供します。OpenSSLライブラリは、セキュア・ソケット・レイヤーおよびトランスポート・レイヤー・セキュリティ・プロトコルを使用した強力な暗号化を提供しています。

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

マルチスレッド化: Apache v1.3.27以降でのインストールではマルチスレッド化が必要です。

Dynamic Shared Object (DSO): WebgateにはDSOサポートが必要です。基本のコア・サーバー機能を拡張するApacheモジュールは、Apacheバイナリに固定的に含むために静的にコンパイルするか、再コンパイルなしで実行時にロードするために動的にコンパイルおよび格納できます。Apache v1.3ではmod_soのコンパイルが必要です。Windowsシステム上のApache v2では、mod_soは基本モジュールで常に含まれています。UNIX上のApache v2では、ロードされたコードは通常、共有オブジェクト・ファイルからのものです。


注意:

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

mod_perl: mod_perlはPerlプログラミング言語をApache Webサーバーに組み込みます。Perlがなくても、Apache v2の構築とインストールは行えますが、Perlで書かれた一部のサポート・スクリプトが使用できません。


注意:

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

Webサーバーの準備

Oracle Access Manager Webコンポーネントのインストール用にホスト・コンピュータを準備する方法と手順は、次のタスクの概要で説明しているように具体的なWebサーバーとプラットフォームによって異なります。

Oracle Access Managerでリバース・プロキシ機能を使用するには、「 ApacheおよびIBM HTTPリバース・プロキシ・サーバーについて」で説明しているように、configureコマンドにプロキシ・モジュールを含む必要があります。「Apache v2およびIHS v2のリバース・プロキシの起動」も参照してください。

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

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

  2. 必要に応じて、「Apache v2およびIHS v2のリバース・プロキシの起動」の説明に従って、リバース・プロキシ機能を起動します。

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

  4. 「Oracle Access Manager Webgate用のhttpd.conf更新の検証」の説明に従って、Webサーバーの構成を終了します。

  5. 必要に応じて次のトピックを参照してください。


注意:

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

IHS v2 Webサーバーの準備

IHS v2 WebサーバーでIHS v2用のWebgateを受け入れて使用できるようにするには、環境や要件に応じて、次の手順の1つ以上を完了する必要があります。

該当する手順を完了すると、IHS v2用のWebgateをインストールする準備が整います。

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 Application Serverに同梱されており、このサイトからもダウンロードできます。

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

       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のインストール」に進みます。

IBM HTTP Server v2のインストール

次の手順は一般的なIBM HTTP Webサーバーのインストールを紹介するものです。かわりにサイレント・インストールの実行を選ぶこともできます。その場合は、java -jar setup.jar -silent -options silent.resコマンドで、silent.resファイルを使用します。silent.resテキスト・ファイルを編集することで、サイレント・インストール・オプションをカスタマイズできます。デフォルト設定では、すべてのオプションがTrueに設定されています。オプションを無効にするには、値をFalseに設定します。

Apache v2によって稼動されるIBM HTTP Webサーバーのインストール手順

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

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

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

    IBM HTTP ServerのInstallShieldウィザードへようこそが表示されます。

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

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

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

    一般、カスタム、または開発者向けのインストール・オプションが表示されます。一般的なインストールを選択すると、すべてが含まれたリストとイメージ・サイズが表示されます。カスタム・インストールを選択すると、コンポーネント・リストが表示され、インストールが不要な任意のコンポーネントの横のボックスをクリアできます。

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

       Typical
    

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

       Installing IBM HTTP Server. Please wait.
    

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

       Updating the inventory.
    
  8. 終了をクリックして、インストールを終了します。

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

    例:

       IHS2_install_dir/bin
       ./apachectl stop
       ./apachectl start
    

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

IHS v2用のWebgateのインストール前または後に、複数のモードでIHS v2 Webサーバーを構成できます。

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. 次の手順に進みます。

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

セキュアな仮想ホストを起動する必要がある場合は、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. Apache v2およびIHS v2のリバース・プロキシの起動に進んでください。

Linux上でのApacheおよびOracle HTTP Server Webサーバー

Linux上のApacheまたはOracle HTTP ServerにOracle Access Manager Webgateをインストールする場合、Webサーバーを実行しているユーザーとしてインストールするように促されます。httpd.confファイルのUserおよびGroupディレクティブを参照してください。

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


注意:

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

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

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


注意:

Oracle HTTP Server 11gでは、どのプラットフォームでもOracle Access Manager Webgate用のモジュールをコメント・アウトする必要はありません。

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

cert_decodeおよびcredential_mapping認証モジュールを使用する場合、Oracle HTTP Server Webサーバーの構成ファイル内の既存のSSLオプションに、+EarlierEnvVarsおよび+ExportCertDataを追加して、SSL対応のOracle HTTP Serverでクライアント証明書認証スキームが正しく機能することを確認する必要があります。次に例を示します。

credential_mapping:

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

ssl.confには次を含む必要があります。

   SSLOptions +StdEnvVars +ExportCertData +EarlierEnvVars

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

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

    $ORACLE_INSTANCE/ohs/conf/ssl.conf

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

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

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

ここでは、Solaris、UNIX、Linux、およびAIXを含むUNIXプラットフォーム上のでOracle Access Manager用のApache v2 HTTP Webサーバーの準備の概要と手順を説明します。「AIX上でのApache v2 SSL Webサーバーの準備」も参照してください。

Apache v2はプレーンまたはSSL対応で構成、構築、およびインストールできます。Apacheソース・ファイルのダウンロードおよび解凍後、スクリプト(UNIX上のconfigureスクリプト、およびWindows用のmakefile.win makeスクリプト)を使用して、ご使用の環境に合ったソース・ツリーをコンパイルします。


注意:

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

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

configureコマンドには、mod_sslを有効にして、MPMを起動するためのオプションも含むことができます。構成後、./httpd -lを使用してサーバーにコンパイルされた各モジュールをリストし、選択したMPMを検証できます。

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

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

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

UNIX用のプレーンApache v2の準備手順

  1. ご使用の環境が、次の場所にあるApacheのドキュメントに記載された、該当するコンパイラと構築ツールのApache要件を満たしていることを確認してください。

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

    注意:

    Apache v2およびOracle Access Managerプラグイン用にサポートされているコンパイラ・バージョンについては、既知の制約はありません。Apacheのドキュメントを参照してください。

  2. Apacheのドキュメントに記載された、完全な、未修正版のApache HTTP Server 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ソース・ツリーの構成例として使用できます。Webgate用のmpm_worker_moduleを使用してUNIX上でApacheをコンパイルする場合は、「Webgate用のmpm_worker_moduleを使用したUNIX上のApache v2」を参照してください。


    注意:

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

  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_install_dir/binディレクトリ内のコマンドを使用して、Apache Webサーバーを停止して再起動し、インストールをテストします。次に例を示します。

       ./apachect1 stop
       ./apachectl start
    
  10. ご使用の環境に合った次のようなタスクに進みます。

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

UNIX上のSSL対応Apache v2の準備手順

  1. ご使用の環境が、次の場所にあるApacheのドキュメントに記載された、該当するコンパイラと構築ツールのApache要件を満たしていることを確認してください。

    http://httpd.apache.org/docs-2.0/install.html
    
  2. Apacheのドキュメントに記載された、完全な、未修正版のApache HTTP Server 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. --prefix=オプションを使用して、先ほどmakeコマンドで構成したインストール・ディレクトリに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コマンドを使用してApache SSL対応パッケージを、--prefix=オプションを使用して構成したインストール・ディレクトリでコンパイルします。次に例を示します。

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

       make install
    

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

  11. ご使用のOpenSSLのドキュメントに記載されているように、openssl_install_dir/binディレクトリ内のOpenSSLツールを使用して証明書を作成しますが、その際、共通名は完全に就職されたホスト名である点を忘れないでください。

  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_install_dir/binディレクトリ内のコマンドを使用して、Apache Webサーバーを停止して再起動し、インストールをテストします。次に例を示します。

       ./apachectl stop   
       ./apachectl startssl
    
  14. 必要に応じて、Apache v2およびIHS v2のリバース・プロキシの起動に進んでください。

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実行可能ファイルには含まれません。

AIX上でのコンパイルにはopenssl-0.9.7dを使用する必要があります(AIX上ではopenssl-0.9.7eはコンパイルしません)。以降の手順は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: 特定の記号のエクスポート。

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

以降では、Windows上のApache v2とUNIX上のApache v2のインストールと構成の違いについて、詳細に説明しています。詳細はご使用のApacheのドキュメントを参照してください。

インストール中: 選択したインストール・ディレクトリを反映するように、Apacheが\confサブディレクトリ内のファイルを構成します。このディレクトリ内のいずれかの構成ファイルが既存の場合、対応するファイルの新規コピーが.ORIGの拡張子で書き込まれます。たとえば、\conf\httpd.conf.ORIGです。

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

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

マルチスレッド化: Windows用のApacheはマルチスレッド化されており、これはUNIX上でのApacheの各リクエストに個別のプロセスは使用しないことを意味しています。かわりに、通常は親プロセスとリクエストを処理する子プロセスという、2つのApacheプロセスのみが実行しています。子プロセス内では、各リクエストが個別のスレッドとして処理されます。

UNIX形式の名前: Apacheは内部でUNIX形式の名前を使用します。引数としてファイル名を受け付けるディレクティブは、UNIXファイル名ではなくWindowsファイル名を使用する必要があります。ただし、バック・スラッシュではなく、フォワード・スラッシュを使用する必要があります。ドライブ文字は使用できます。ただし、ドライブ文字を省略する場合は、Apacheの実行可能ファイルのドライブが適用されます。

LoadModuleディレクティブ: Windows用のApacheには、サーバーの再コンパイルを行わなくても、実行時にモジュールをロードする機能が含まれています。Apacheが正しくコンパイルされれば、\Apache2\modulesディレクトリ内にオプションのモジュールがいくつかインストールされます。これらのモジュールやその他のモジュールを起動するには、LoadModuleディレクティブを使用する必要があります。たとえば、statusモジュールを起動するには、次を使用します(access.conf内のステータス起動ディレクティブに加え)。

LoadModule status_moduleモジュール/mod_status.so

UNIXでは、ロードされたコードは通常、共有オブジェクト・ファイル(.soの拡張子)からのもので、Windowsでは.soまたは.dllの拡張子が付いています。

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

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

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

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

apacheコマンドを使用して、コマンドラインからApacheを使用できます。Control-Cを押して停止するまで、Apacheは実行を継続します。インストール中に開始メニューからApacheを実行することもできます。


注意:

Control-Cを押しても、Apacheは現在実行中の操作の終了と正常なクリーンアップを行えません。

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

Windows用のApache v2の準備手順

  1. ご使用の環境が、次の場所にあるApacheのドキュメントに記載されたApache要件を満たしていることを確認してください。

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

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

    次の手順を終えたら、.msiの拡張子が付いた、Windows用のApacheバージョンを必ずダウンロードしてください。

  2. Apacheのドキュメントに記載された、完全な、未修正版のApache HTTP Server 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/
    

    ようこそページと、Apacheマニュアルへのリンクが表示されるはずです。そうでない場合は、logsサブディレクトリ内のerror.logファイルを確認してください。

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

  7. Apacheのドキュメントを参照して、ご使用の環境に合わせてApacheを構成します。

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

  9. 必要に応じて、Apache v2およびIHS v2のリバース・プロキシの起動に進んでください。

Apache v2およびIHS v2のリバース・プロキシの起動

Apache v2およびIHS v2 powered by Apache用のWebgateは、リバース・プロキシ機能を起動している場合に、この機能をサポートします。リバース・プロキシ機能の実装手順は、ご使用の環境によって異なります。

Apache v2 Webサーバーのリバース・プロキシの起動

Oracle Access Managerでリバース・プロキシ機能を使用するには、Webサーバーに対するconfigureコマンドにApacheプロキシ・モジュールを含む必要があります。mod_proxyおよびmod_proxy_httpモジュールを、サーバーに動的にロードする必要もあります。リバース・プロキシは、ProxyPassディレクティブを使用して、またはRewriteRuleディレクティブに[P]フラグを使用して起動します。

リバース・プロキシ機能は、ProxyPassディレクティブを使用して、またはRewriteRuleディレクティブに[P]フラグを使用してアクティブにします。リバース・プロキシを構成するためにProxyRequestsを有効にする必要はありません。リバース・プロキシ(ProxyRequests Offを使用したProxyPassディレクティブ)を使用する場合、アクセス制御はそれほど問題になりません。これは、クライアントがコンタクトできるのは具体的に構成したホストのみであるためです。<Proxy>制御ブロックを使用して、プロキシへのアクセスを制御できます。

Apache v2 Webサーバーのリバース・プロキシ機能の起動手順

  1. 「ApacheおよびIBM HTTPリバース・プロキシ・サーバーについて」を確認してください。

  2. 必要に応じて、Webサーバー用のconfigureコマンドにApacheプロキシ・モジュールを含みます。

    例:

    --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. まだ実施していない場合は、第27章「OAM 11gでのOAM 10g Webgateの管理」の手順を実行します。

IHS v2 Webサーバーのリバース・プロキシの起動

Webサーバーのインストール後に次の手順を使用します。

Apache 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. 次の手順を実行します。

    • まだ実施していない場合は、第27章「OAM 11gでのOAM 10g Webgateの管理」で説明しているとおり、OAM 11gでの10g Webgateのインストールを完了してください。

    • 必要に応じて、この章に戻って、残りのタスクを実行します。

Oracle Access Manager Webgate用のhttpd.conf更新の検証

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

IHS Webサーバー上のリバース・プロキシ用httpd.confを更新するには、「IHS v2 Webサーバーのリバース・プロキシの起動」を参照してください。Webサーバー用にhttpd.confをカスタマイズするには、ご使用のWebサーバーのドキュメントを参照してください。

Webgateの詳細検証

次の例は、httpd.confファイルのWebgateセクションを示します。環境によって詳細は異なります。この例は、httpd.confでの各種変更を示すためだけに提供されています。

httpd.confのWebgateセクションの検証手順

  1. Webgateをホスティングしているコンピュータ上の更新済httpd.confファイルを検索します。

  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"とします(またはユーザー名を"www"で、グループ名を"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)を参照してください。

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 Webgate用のApache/IHS v2のチューニング」を参照して、Apache v2用のOracle Access Managerの実装を終了するために必要な手順を完了してください。


    重要:

    httpd.confファイルからWebgate関連の変更をクリアする必要がある場合にかぎり、次の手順を使用し、改めて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を開いて、第27章「OAM 11gでのOAM 10g Webgateの管理」で説明されているとおり、手動での構成を行います。

    • または、component_install_dir/access/oblix/tools/setup/InstallTools/ManageHttpConf内のManageHttpConfプログラムをオプションなしで実行して、使用方法に関する指示を出力します。


      注意:

      httpd.confファイル内にWebgateエントリがある状態でManageHttpConfプログラムを実行すると、エラー・メッセージが表示され、httpd.confファイルは更新されません。

  3. 「Oracle Access Manager Webgate用のApache/IHS v2のチューニング」の作業を完了してください。

言語エンコーディングの検証

前述のように、Oracle Access Manager HTMLページではUTF-8エンコーディングを使用します。ApacheベースのWebサーバーでは、管理者はHTMLページを生成しているアプリケーションが指定する文字を無効にするAddDefaultCharsetディレクティブを使用して、送信されるすべてのHTMLページにデフォルトの文字セットを指定できます。AddDefaultCharsetディレクティブがUTF-8以外の文字セットを有効にした場合、Oracle Access Manager HTMLページで文字化けが発生します。

正しい言語エンコーディングの確認手順

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

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

  3. 次のいずれかの作業を完了し、Oracle Access Manager HTMLページのエンコーディングが正しいことを確認します。

    • AddDefaultCharsetディレクティブをオフにします。

    • または、AddDefaultCharsetディレクティブをコメント・アウトします。

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

Oracle Access Manager Webgate用のOracle HTTP Serverのチューニング

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

前述のように、Oracle HTTP Server用のOracle Access Manager Webgateをインストールする前に、コンポーネントのインストールを行うユーザーに合わせて、httpd.confファイル内のユーザーとグループを変更する必要があります。


注意:

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

Oracle Access Manager Webgate用の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. 「Oracle HTTP Server Webサーバーの起動と停止」に従って、Oracle HTTP Server Webを起動します。

OAM用のOHS/Apache PreforkおよびMPMモジュールのチューニング

これらのWebサーバー用に、Oracle Access Manager Webgateの特定のチューニング・パラメータを設定することをお薦めします。

この項で説明しているチューニング・パラメータは、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

それぞれの環境で必要に応じて次に進んでください。

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はプロセスが失効しないことを示します。

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 (単一のhttpdプロセス内のワーカー・スレッド数。)

MaxRequestsPerChild: 0 (このディレクティブは、各子サーバー・プロセスが処理するリクエスト数の制限を設定します。0の値はプロセスが失効しないことを示します。)

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

ファイル記述子のソフトおよびハード・リミットのカーネル・パラメータが、高い値に設定されていることを確認することをお薦めします。次に例を示します。

ハード・リミット(rlim_fd_max): 65535

ソフト・リミット(rlim_fd_cur): 65535

リクエスト用にソケットの開閉を行うApacheサーバーでは、ファイル記述子の値を高く設定しておくことを強くお薦めします。

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
    

Oracle Access Manager Webgate用のApache/IHS v2のチューニング

特に明記しないかぎり、ここに記載された情報はApacheおよびIHS v2 Webgateコンポーネント(プラグインとも呼ばれている)の両方に適用されます。Oracle HTTP Serverの詳細は、『Oracle HTTP Server管理者ガイド10gリリース2 (10.1.2)』を参照してください。

Security-Enhanced LinuxにバンドルされたApache v2: SELinuxでは、Oracle Access Manager Webコンポーネントのインストール後に、より厳格なSELinuxポリシーが設定されたLinuxディストリビューションで、Webサーバーを起動する際に、WebServerログ/コンソールにエラーが報告されます。Webサーバーを再起動する前に、インストールされたWebコンポーネント用の適切なchconコマンドを実行することにより、これらのエラーを防止できます。


関連項目:

「SELinuxの問題」

Apache v2がバンドルされたSELinux対応のLinuxディストリビューション: Security-Enhanced Linux (SELinux)は、アクセス・コントロール・メカニズムの強制自動的に実装します。ご使用のLinuxのドキュメントにも記載されているように、SELinuxポリシーはシステム・デーモン用に、/etc/httpd/conf、/usr/sbin/apachect、および/var/log/(これはほんの一例)などの特定の事前定義済システム・ディレクトリへのアクセスを提供します。

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

バンドルされたApache Webサーバーは、context=user_u:system_r:unconfined_tとして定義されたセキュリティ・コンテキストで、ユーザー"apache"として実行されます。その結果、Oracle Access Manager Webgateをいずれかのユーザー・フォルダにインストールすると、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. Webサーバーのユーザーおよびグループ(デフォルト: apache)に対して、すべてのOracle Access Manager Webgateがインストールされていることを確認します。

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

    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コンポーネントのインストール・ディレクトリを登録します(アイデンティティやアクセスの接尾辞なしで)。次に例を示します。

     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 v2内のprefork MPMのみがApache v1.3と同様のHTTPリクエスト処理プロセス・モデルを使用しています。その他すべてのMPMでは、Apache v2はハイブリッドのプロセス・スレッド・モデルを使用しています。

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

前述のパラメータに適した値は、Access ServerおよびLDAPサーバーを含む、関係しているシステムでの予想負荷とパフォーマンス・クラスによって異なります。

予想負荷が高く、非常に高いパフォーマンスのシステム上では、ワーカー・プロセス数の制限を増やして、Apacheサーバーを再コンパイルできます。これらのシステムは、突然の負荷増加に対応するために、StartServersおよびMinSpareServersパラメータへのパフォーマンスの影響が高くなることがあります。

正しく機能させるために、Access Serverのオペレーティング・システム制限を調整する必要があります。特に、いずれかのAccess Server用に提供されているファイル記述子の最大数をデフォルト値より増やす必要があります。Apacheベースの各WebgateとAccess Serverとの間に複数の接続を構成すると、この制限を即座に超える可能性があります。

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

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

インストール中に生じたWebサーバーの構成変更は、Webgateのアンインストール後に手動で削除する必要があります。このタイプの情報は手動で削除する必要があります。

さらに、Webgate用にWebサーバー構成ファイルに対して手動で行った変更もすべて削除する必要があります。各コンポーネントに追加される内容の詳細は、この章の他の項を参照してください。

役立つ情報

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

『Oracle HTTP Server管理者ガイド10gリリース2 (10.1.2)』

次の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