データベースへのセキュアな通信(TCPS)アクセス

TCPS対応のリスナーを検出、モニタリングおよび管理するための即時利用可能なサポートが提供されています。管理プロビジョニング・フローまたはクラウド・セルフ・サービス・ポータルを介して作成したすべてのデータベースでは、デフォルトでSSL対応の接続文字列がサポートされます。TCPS接続プロトコルを構成することで、ターゲット・データベースを安全にモニターできます。セキュアなアクセスを構成することで、OMSとデータベース・サーバー・ターゲット間およびエージェントとデータベース・サーバー・ターゲット間でデータ転送の暗号化が有効になります。

企業はクラウド・ソリューションを目指しているため、セキュアなユーザー認証は製品提供における主要な要件の1つです。(Enterprise Manager 11gで導入された) Oracleのデフォルト認証プロトコルO3LOGONおよびO5LOGONが改良されて、TCPプロトコルよりもセキュアなTCPSプロトコルを使用したOracle Database Serverへのユーザー認証が可能になりました。

ノート:

セキュアな認証を使用することによる、通常のデータベース・パフォーマンスへの影響はありません。

TCPSの構成

TCPSを構成するには:

  1. ターゲット・データベースでOracle Advanced Security TLS設定を有効にします。
    TLSv1.2の構成の場合、
    1) sqlnet.oraまたはlistener.oraファイルでSSL_VERSIONを1.2に設定して、TLSv1.2を構成します。
    2) sqlnet.oraファイルのSSL_CLIENT_AUTHENTICATIONパラメータをTRUEに設定します。
  2. サード・パーティCA証明書でセキュアなウォレットを構成します。
  3. OMSおよびエージェントの通信用にサード・パーティCA証明書ウォレットを構成します。
  4. ターゲット・データベースのモニタリング構成プロパティで、接続プロトコルをTCPSに設定します。

ターゲット・データベースとの通信用のサード・パーティCA証明書の構成

前提条件

TCPS経由でターゲット・データベースに接続する場合、ターゲットDBはサーバー、OMSおよびモニタリング・エージェントとして動作し、クライアントとして接続します。

  1. ターゲット・データベースがTCPS用に構成されていることを確認します。

  2. ウォレットは、DBサーバーで使用されるユーザー、ルートおよび中間証明書を使用して作成する必要があります。

    Eg:/u01/server/swallets/
    クライアント・ウォレットは、DBサーバーで使用されるルート証明書と中間証明書を使用して作成する必要があります。
  3. RAC内のDBの場合、ウォレットには、各VIPのパブリック証明書と、信頼できる証明書としてのDBのルートおよび中間CAパブリック証明書が含まれている必要があります。

    Eg:/u01/server/cswallets/
  4. 4. DBホームのlistener.oraおよびsqlnet.oraを次のように更新する必要があります

    $vi <DB_ORACLE_HOME>/network/admin/listener.ora
    
    LISTENER = (ADDRESS=(PROTOCOL=tcps)(HOST=hostname)(PORT=1521))
    
    SID_LIST_LISTENER = (SID_LIST=(SID_DESC=(SID_NAME=dbsid)(ORACLE_HOME=<DB HOME>))) -This is not mandatory
    
    WALLET_LOCATION = (SOURCE=(METHOD=FILE)(METHOD_DATA=(DIRECTORY= /u01/server/swallets/)))
    
    SSL_CLIENT_AUTHENTICATION=TRUE  - To support 2-way SSL
    
    SSL_CIPHER_SUITES=(<Supported Cipher Suite>) - This is not mandatory
    
    SSL_VERSION=(Protocol Versions) - This is not mandatory
    
    $vi <DB_ORACLE_HOME>/network/admin/sqlnet.ora

    次をこのファイルに追加します

    WALLET_LOCATION = (SOURCE=(METHOD=FILE)(METHOD_DATA=(DIRECTORY=/u01/server/swallets/)))
    
    SSL_CLIENT_AUTHENTICATION=TRUE - To support 2-way SSL
    
    SSL_CIPHER_SUITES=(<Supported Cipher Suite>) - This is not mandatory
    
    SSL_VERSION=(Protocol Versions) - This is not mandatory
  5. OMSとリポジトリ・データベース間の通信では、1方向SSLのみがサポートされています。

    したがって、EMリポジトリ・データベースのSSL_CLIENT_AUTHENTICATION=FALSE

  6. データベースで使用されるルート証明書およびすべての中間証明書をコピーして、テキスト・ファイルを分離します。

    例: root_certificate.txt, inter1_certificate.txt, inter2_certificate.txt

  7. 前述のクライアント・ウォレットをOMSサーバーにコピーし、ターゲットDBサーバーをOMSおよびエージェントが所有する任意の場所にコピーします。これは、エージェントおよびOMSによりDB証明書チェーンを信頼するために使用されます

    Eg:/u01/client/cswallets/ on OMS server and target Agent Server
  8. 双方向SSL (SSL_CLIENT_AUTHENTICATION=TRUE)を使用する場合、OMSおよびモニタリング・エージェントもサード・パーティ証明書を使用するように構成する必要があります

TCPSを介してターゲット・データベースに接続するためのOMSの構成

次のステップがすでに1回実装されている場合は、データベース・ターゲットごとに繰り返す必要はありません

  1. 次のプロパティをOMSに設定して、DB証明書を信頼するようにトラストストアを構成します

    <OMS HOME>/bin>emctl set property -sysman_pwd sysman -name em.targetauth.db.pki.TrustStoreType -value PKCS12
    <OMS HOME>/bin>emctl set property -sysman_pwd sysman -name em.targetauth.db.pki.TrustStore -value /u01/client/cswallets/ewallet.p12
    <OMS HOME>/bin>emctl set property -sysman_pwd sysman -name em.targetauth.db.pki.TrustStorePassword -value <password of wallet in cswallet folder>
  2. クライアント認証がON (listener.ora内)の場合、次のステップに従う必要があります。これに従うには、エージェントおよびOMSがサード・パーティ証明書で保護されていることが必須です

    1. OMSアップロードで使用されるサード・パーティ・ウォレットをOMSサーバーの新しい場所(/u01/clientoms/cwallets/など)にコピーします。

    2. OMSで次のプロパティを設定します

      <OMS HOME>/bin>emctl set property -sysman_pwd sysman -name em.targetauth.db.pki.KeyStoreType -value PKCS12
      <OMS HOME>/bin>emctl set property -sysman_pwd sysman -name em.targetauth.db.pki.KeyStore -value /u01/clientoms/cwallets/ewallet.p12
      <OMS HOME>/bin>emctl set property -sysman_pwd sysman -name em.targetauth.db.pki.KeyStorePassword -value <password of third party wallets of OMS>
  3. ローリング方式で各OMSを再起動します

    <OMS HOME>/bin>emctl stop oms -all -force
    <OMS HOME>/bin>emctl start oms

TCPSを介してターゲット・データベースに接続するためのモニタリング・エージェントの構成

  1. 次のプロパティをモニタリング・エージェントに設定して、DB証明書を信頼するようにトラストストアを構成します

    <AGENT HOME>/bin>emctl setproperty agent -name connectionTrustStoreType -value PKCS12
    <AGENT HOME>/bin>emctl setproperty agent -name connectionTrustStoreLocation -value /u01/client/cswallets/ewallet.p12
    <AGENT HOME>/bin>emctl setproperty agent -name connectionTrustStorePassword -value <password of wallet in cswallet folder>
  2. 2. クライアント認証が(listener.ora内で) ONになっている場合、次のステップに従う必要があります。これに従うには、エージェントおよびOMSがサード・パーティ証明書で保護されていることが必須です

    1. エージェントが使用するサード・パーティ・ウォレットを、エージェント・サーバー上の新しい場所(/u01/clientagent/cwallets/など)にコピーします

    2. 次のプロパティをエージェントで設定します

      <AGENT HOME>/bin>emctl setproperty agent -name connectionKeyStoreType -value PKCS12
      <AGENT HOME>/bin>emctl setproperty agent -name connectionKeyStoreLocation -value /u01/clientagent/cwallets/ewallet.p12
      <AGENT HOME>/bin>emctl setproperty agent -name connectionKeyStorePassword -value <password of third party wallets of Agent>
  3. モニタリング・エージェントを再起動します

    <AGENT HOME>/bin>emctl stop agent
    <AGENT HOME>/bin>emctl start agent
  4. DBターゲットのモニタリング構成を、次のemcliコマンドを使用して、またはコンソールからTCPSに更新します

    $emcli modify_target -name="database1.domainname" -type="oracle_database" -properties="Port:<TCPS_PORT>;Protocol:TCPS" -on_agent

    ノート:

    EMからデータベースへの接続をテストするときにエラー「無効なクライアントまたはサーバー・ウォレット」が記録される場合は、OMSのMW HOMEに12.1.3バージョンのFMWパッチ20629366を適用します。

ノート:

Linux以外のプラットフォーム上の13.4エージェントからターゲット・データベースへのTCPS接続が失敗します。解決策については、次のドキュメントを参照してください。

13.4: Linux以外のプラットフォーム上のエージェントからターゲット・データベースへのTCPS接続が失敗します(ノート2746913.1)