プライマリ・コンテンツに移動
Oracle® Fusion Middleware Oracle Access Management管理者ガイド
11g リリース2 (11.1.2.3) for All Platforms
E61950-08
目次へ移動
目次

前
次

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

Apache v2およびIHS v2 powered by Apache用のWebgateは、リバース・プロキシ機能を起動している場合に、この機能をサポートします。

リバース・プロキシ機能の実装手順は、ご使用の環境によって異なります。

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

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. 次のトピックを確認します。
  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. 「Access Manager 11gを使用する10g Webゲートの登録および管理」のステップを実行します(実行していない場合)。

31.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. 次のステップを実行します。