2 Oracle Exadata Database Machineのセキュリティ機能

Oracle Exadata Database Machineのハードウェアとソフトウェアが強化されました。

Oracle Exadata Database Machineを強化するために次のステップが実行されています。

  • 不要なパッケージがサーバーにインストールされないように、インストールされるパッケージのリストを縮小しました。

  • Oracle Exadata Storage Serverの不可欠なサービスのみを有効化しました。

  • ストレージ・サーバー上でファイアウォール(iptables)を有効化しました。

  • オペレーティング・システム・ユーザーの監査を有効化しました。

  • 強化されたパスワード・ポリシーを強制しました。

また、Oracleによって、サービスに対するNTPやSSHなどの推奨されるセキュアな構成も提供されます。さらに、Oracle Exadata Database Machineアーキテクチャにより、次のセキュリティ機能がコア・コンポーネントに提供されます。これらのセキュリティ機能は、階層化されたセキュリティ戦略の展開を推進する組織で最もよく採用されます。

2.1 システムの起動に使用するバイナリの制限

セキュア・ブートでは、カーネル・モジュール・レベルまで下る信頼のチェーンがサポートされています。

セキュア・ブートは、システムを起動する際に実行できるバイナリを制限するために使用する方法です。セキュア・ブートを使用すると、システムUEFIファームウェアでは、信頼できるエンティティの暗号署名を使用するブート・ローダーの実行のみを許可します。つまり、UEFIファームウェアで実行されるすべてのものは、システムで信頼できると認識されているキーによって署名される必要があります。サーバーを再起動するたびに、実行されるすべてのコンポーネントが検証されます。これにより、ブート・チェーン内の埋込みコードにマルウェアが隠れないようにします。

ロード可能なカーネル・モジュールは信頼できるキーで署名されている必要があり、署名がない場合はカーネルにロードできません。

次の信頼できるキーは、UEFI NVRAMの変数に格納されます。

  • Database (DB): 既知のキーを含む署名データベースです。DBに対して確認できるバイナリのみが、BIOSによって実行されます。

  • Forbidden Database (DBX): ブラックリストに載っているキーです。DBX内のエントリと一致するキーを持つオブジェクトをロードしようとすると、拒否されます。これは、正しくないキーを示すリストです。

  • Machine Owner Key (MOK): インストールするカーネル・モジュールのためにユーザーが追加したキーです。

  • Platform Key (PK): ハードウェア・ベンダーによってインストールされたキーです。このキーは、ベンダーによってインストールされ、ILOMファームウェア内にあります。このキーには、ホストからはアクセスできません。

  • Key Exchange Key (KEK): 署名データベースの更新に必要なキーです。

UEFI構成メニューによるキーの追加、キーの変更またはセキュア・ブートの有効化および無効化には、ユーザーがシステム・コンソールに物理的にアクセスできる必要があります。Linuxを実行するほとんどのUEFI対応サーバーでは、デフォルトのブート・ローダーはgrub2です。セキュア・ブートが有効になっている場合は、さらにshimブート・ローダーが必要です。セキュア・ブート・モードで起動している場合は、最初にshimloaderが呼び出されます。それは、信頼できる署名がこれに含まれているためです。shimloaderは、次にgrub2をロードします。これはその後、OSカーネル(これも署名されている)をロードします。

セキュア・ブートは、X7-2以降のデータベースおよびストレージ・サーバーで使用できます。

2.1.1 セキュア・ブートの有効化と無効化

セキュア・ブートは、BIOSでデフォルトで有効になっています。

セキュア・ブートは、BIOSで構成され、デフォルトで有効になっています。ブート処理中に[F12]を押し、EFIブート・メニューに移動し、セキュア・ブート・オプションを無効にすることで、セキュア・ブートを無効にできます。

セキュア・ブート・オプションは有効なままにしておくことをお薦めします。

セキュア・ブートが有効になっていることを確認するには、次のコマンドを使用します。

# mokutil --sb-state
SecureBoot enabled

2.1.2 セキュア・ブートで使用するキーと証明書の管理

mokutilコマンドを使用して、セキュア・ブートで使用するキーと証明書を管理できます。

証明書は、DigiCertによって署名され、.署名した日付から3年間有効になります。証明書が期限切れになっている可能性があるとしても、検証は、grubおよびカーネルが署名された日付と、証明書がその時点で有効になっていたかどうかに基づきます。

証明書を更新するには、保護されたサーバー上のカーネル、grub、およびILOMを新しい署名済バージョンで更新します。

  • 既存のキーを問い合せるには、コマンドmokutilを使用します。
    [root@scaqae03celadm11 ~]# mokutil --list-enrolled
    [key 1]
    SHA1 Fingerprint: 17:62:e7:3b:f1:6c:d7:89:1f:cd:0c:49:0c:4c:02:0c:30:41:0c:d0
    Certificate:
     Data:
       Version: 3 (0x2)
       Serial Number:
         0f:2d:c0:56:d7:4b:e5:54:51:9d:ef:7e:c2:33:2e:d3
     Signature Algorithm: sha256WithRSAEncryption
      Issuer: C=US, O=DigiCert Inc, OU=www.digicert.com, CN=DigiCert EV Code Signing CA (SHA2)
            Validity
                Not Before: Nov 24 00:00:00 2015 GMT
                Not After : Nov 27 12:00:00 2018 GMT
            Subject: businessCategory=Private Organization/1.3.6.1.4.1.311.60.2.1.3=US/1.3.6.1.4.1.311.60.2.1.2=Delaware/serialNumber=4028125/street=500 Oracle Parkway/postalCode=94065, C=US, ST=California, L=Redwood Shores, O=Oracle Corporation, CN=Oracle Corporation
         Subject Public Key Info:
            Public Key Algorithm: rsaEncryption
               Public-Key: (2048 bit)
               Modulus:
                  00:b3:de:ff:b5:6c:6c:d1:7a:24:c5:44:de:03:e8:
                  29:22:be:0c:3b:06:4a:68:a9:a2:b4:1b:1d:2a:9d:
                  ...                    
               Exponent: 65537 (0x10001)
            X509v3 extensions:
              X509v3 Authority Key Identifier: 
                  keyid:8F:E8:7E:F0:6D:32:6A:00:05:23:C7:70:97:6A:3A:90:FF:6B:EA:D4
    
             X509v3 Subject Key Identifier: 
                    51:69:8E:C3:BE:0F:5E:B8:CB:A8:EC:19:7D:29:18:79:09:8F:AD:E4
             X509v3 Subject Alternative Name: 
                    othername: <unsupported>
             X509v3 Key Usage: critical
                    Digital Signature
             X509v3 Extended Key Usage: 
                    Code Signing
             X509v3 CRL Distribution Points: 
    
                 Full Name:
                   URI:http://crl3.digicert.com/EVCodeSigningSHA2-g1.crl
    
                 Full Name:
                   URI:http://crl4.digicert.com/EVCodeSigningSHA2-g1.crl
    
             X509v3 Certificate Policies: 
                 Policy: 2.16.840.1.114412.3.2
                   CPS: https://www.digicert.com/CPS
                 Policy: 2.23.140.1.3
    
             Authority Information Access: 
                 OCSP - URI:http://ocsp.digicert.com
                 CA Issuers - URI:http://cacerts.digicert.com/DigiCertEVCodeSigningCA-SHA2.crt
    
             X509v3 Basic Constraints: critical
                 CA:FALSE
       Signature Algorithm: sha256WithRSAEncryption
             6d:42:58:c7:f1:aa:db:e7:5c:7f:d3:47:29:0a:f4:b7:f7:c0:
             0e:55:29:5b:79:60:91:77:4f:f6:ec:b3:a7:9e:e1:5a:e1:79:
             ...
    
2.1.2.1 mokutilの使用によるセキュア・ブートのキーの追加

セキュア・ブートで使用するための新しいキーをインポートまたは追加できます。

コマンドmokutil --helpを使用してその他のオプションを表示できます。
これらのコマンドは、rootユーザーで実行する必要があります。
  1. 追加するキーのために、DERフォーマット済のX509証明書ファイルを作成します。
  2. そのキーがすでにアクティブになっているかどうかを確認します。
    # mokutil --test-key new_target_cert.cer
  3. そのキーが現在アクティブでない場合は、キー証明書をインポートします。
    # mokutil --import new_target_cert.cer
2.1.2.2 mokutilの使用によるセキュア・ブートのキーの削除

セキュア・ブートで使用するためのキーを削除できます。

コマンドmokutil --helpを使用してその他のオプションを表示できます。
これらのコマンドは、rootユーザーで実行する必要があります。
  • キーを削除するには、次のコマンドを使用します。
    mokutil --delete key_file

2.1.3 セキュア・ブート環境のチェック

オペレーティング・システム・コマンドを使用して、セキュア・ブートが有効になっているかどうかを判定できます。

  1. rootユーザーとしてログインします。
  2. dmesgを使用して、セキュア・ブートが有効になっているかどうかを確認します。
    # dmesg | grep &quot;Secure boot&quot; 
    [ 0.000000] Secure boot enabled
  3. または、odコマンドを使用して、セキュア・ブートが有効になっているかどうかを判定します。
    $ od -An -t u1 /sys/firmware/efi/vars/SecureBoot-8be4df61-93ca-11d2-aa0d-00e098032b8c/data 

    このコマンドは、0 (有効でない)または1 (有効)のどちらかの値を返します。

2.1.4 セキュア・ブートのトラブルシューティング

セキュア・ブートが有効になっている場合、次の問題が発生する可能性があります。

証明書は、DigiCertによって署名され、.署名した日付から3年間有効になります。証明書が期限切れになっている可能性があるとしても、検証は、grubおよびカーネルが署名された日付と、証明書がその時点で有効になっていたかどうかに基づきます。

エラー
原因
エラー: ファイルに無効な署名があります。エラー: まずカーネルをロードする必要があります。
grubローダーは署名されていますが、カーネルが署名されていません。
セキュア・ブート違反: 無効な署名が検出されました。設定でセキュア・ブート・ポリシーを確認してください。
grubローダーに無効な署名があります。
エラー: 検証失敗: (15)アクセスが拒否されました。イメージのロードに失敗: アクセスが拒否されました。start_image()でAccess Deniedが返されました。
イメージにISOイメージがロードされています。サーバーが署名されていません。

2.2 分離ポリシーの使用

Oracle Exadata Database Machineは複数の分離レベルをサポートしています。

ITインフラストラクチャの統合、共有サービス・アーキテクチャの実装、およびセキュアなマルチテナント型サービスの提供を必要とする組織では、サービス、ユーザー、データ、通信およびストレージを分離すると有益です。Oracle Exadata Database Machineを使用すると、組織のニーズに基づいて、柔軟に分離ポリシーおよび戦略を実装できます。Oracle Exadata Database Machineのセキュアな分離には次のレベルがあります。

2.2.1 ネットワーク・トラフィックの分離

Oracle Exadata Database Machineは、ネットワーク・トラフィックを分割するために複数のネットワークを使用します。

物理的なネットワーク・レベルで、クライアント・アクセスがデバイス管理およびデバイス間通信から分離されます。クライアントと管理ネットワーク・トラフィックは、個別のネットワーク上で分離されます。クライアント・アクセスは、システムで実行中のサービスへの信頼性の高い高速アクセスを可能にする、冗長10Gbps Ethernetネットワークを介して提供されます。管理アクセスは、物理的に独立した1Gbps Ethernetネットワークを介して提供されます。これにより、運用ネットワークと管理ネットワーク間の分離が実現します。

組織は、仮想LAN (VLAN)を構成することによって、クライアント・アクセスEthernetネットワーク上のネットワーク・トラフィックをさらに分割することを選択できます。VLANでは、要件に基づいてネットワーク・トラフィックを分割します。通信の機密保持と整合性を確保するために、暗号化されたプロトコルをVLAN上で使用することをお薦めします。

デバイス間通信は、RDMAネットワーク・ファブリック (InfiniBandまたはRDMA over Converged Ethernet (RoCE))によって提供されます。RDMAネットワーク・ファブリックは、Oracle Exadata Storage Serverとデータベース・サーバー間の通信用の、高パフォーマンスで低レイテンシのバックプレーンです。デフォルトでは、Oracle Exadata Storage Serverには構成済のソフトウェア・ファイアウォールが含まれます。ソフトウェア・ファイアウォールを使用してデータベース・サーバーを構成することもできます。

注意:

InfiniBandプライベート・ネットワークをパーティション分割しても、InfiniBandファブリックは保護されません。パーティション分割では、マシン間でのInfiniBandのトラフィックの分離のみを行います。

2.2.2 データベースの分離

オペレーティング・システム制御とデータベース機能を使用して、データベースの分離を有効にします。

環境全体を単一のアプリケーションまたはデータベース専用にすることによって物理的に分離することは、最適な分離方法の1つです。ただし、費用がかかります。同じオペレーティング・システム・イメージ内の複数のデータベースを使用するという分離戦略によって、費用効果を高めることができます。複数データベースの分離は、ユーザー、グループおよびリソース制御専用の資格証明などの、データベース・レベルとオペレーティング・システム・レベルの制御を組み合せて実現されます。

Oracle Exadata Database Machineでは、Oracle Databaseのすべてのセキュリティ・オプションを使用できます。より細かい粒度でデータベースを分離する場合は、Oracle Database VaultOracle Virtual Private DatabaseOracle Label Securityなどのソフトウェアを使用できます。

Oracle Database Vaultには、単一のデータベース内の論理レルムを使用して分離を強制する、必須アクセス制御モデルが含まれています。論理レルムは、管理アカウントによるアプリケーション・データへの非定型アクセスをブロックすることによって、既存のアプリケーション表の周囲に保護境界を形成します。Oracle Database Vaultコマンド・ルールにより、だれが、いつ、どこで、どのようにデータベースおよびアプリケーション・データにアクセスするかを制限するポリシーベースの制御が可能になります。これにより、アプリケーション・データへの信頼できるパスが作成されます。Oracle Database Vaultを使用して、時間、ソースIPアドレスおよび他の条件に基づいてアクセスを制限することもできます。

Oracle Virtual Private Databaseを使用すると、データベースの表とビューへの、行および列レベルのファイングレイン・アクセスを強制するポリシーを作成できます。Oracle Virtual Private Databaseでは、ポリシーがデータベース・オブジェクトに関連付けられ、データへのアクセス方法に関係なく自動的に適用されるため、セキュリティのポータビリティが提供されます。データベース内で粒度の細かい分離を実現するために、Oracle Virtual Private Databaseを使用できます。

Oracle Label Securityは、データの分類、および分類に基づいたそのデータへのアクセスの仲介に使用されます。組織は、組織のニーズを最適にサポートする、階層や非結合などの分類計画を定義します。この機能を使用すると、異なる分類レベルで格納された情報を単一の表領域内の行レベルで分離できます。

2.2.3 ストレージの分離

Oracle Exadata Database Machineストレージは、RDMAネットワーク・ファブリック (InfiniBandまたはRDMA over Converged Ethernet (RoCE))を使用することでアーキテクチャの残りの部分と分離されます。

Oracle Exadata Storage Serverによって管理されるストレージは、Oracle Automatic Storage Management (Oracle ASM)を使用してさらに分割し、個別のディスク・グループを作成できます。各ディスク・グループに独自のセキュリティ・ポリシーを設定できます。

2.3 Oracle Exadata Storage Serverへのネットワーク・アクセス

Oracle Exadata System Softwareには、各セルにファイアウォールを実装するセルウォール・サービスが含まれています。

このサービスは/etc/init.d/cellwallディレクトリにあり、セル上にiptablesファイアウォールを実装します。さらに、SSHサーバーは管理ネットワーク(NET0)およびRDMAネットワーク・ファブリック上のみでの接続リクエストに応答するよう構成されています。

ファイアウォール・ルールを確認するには、次のコマンドをrootユーザーとして実行します。

iptables --list

注意:

データベース・サーバーに自動的に構成されるファイアウォールはありません。Oracle Exadata Database Machineの現在のネットワーク要件を満たすように、データベース・サーバー上にiptablesのセットを実装します。

2.4 データへのアクセス制御

アプリケーション・データ、ワークロードおよび実行の基礎となるインフラストラクチャを保護するために、Oracle Exadata Database Machineには、ユーザーと管理者の両方のための、包括的で柔軟なアクセス制御機能が備えられています。

制御機能には、ネットワーク・アクセス、データベース・アクセスおよびストレージ・アクセスが含まれます。

2.4.1 ネットワーク・アクセスの制御

単純なネットワーク・レベルの分離を超えて、デバイス・レベルでファイングレイン・アクセス制御ポリシーを設定できます。

Oracle Exadata Database Machineのすべてのコンポーネントには、ネットワーク分離などのアーキテクチャの手法を使用するか、またはパケット・フィルタリングおよびアクセス制御リストを使用して、コンポーネント間、サービス間、またはコンポーネントとサービスの間の通信を制限することによって、サービスへのネットワーク・アクセスを制限する機能があります。

2.4.2 データベース・アクセスの制御

職務の分離は、共謀行動のリスクを減らし、不測のエラーを防止するために、アーキテクチャのすべてのレイヤーで重要です。

たとえば、異なるオペレーティング・システム・アカウントを使用して、Oracle Automatic Storage Management (Oracle ASM)をサポートする管理者を含むデータベース管理者とストレージ管理者のロールを分離します。Oracle Database内では、ユーザーがアクセスを認可されているデータ・オブジェクトにのみアクセスできるように、ユーザーに特定の権限およびロールを割り当てることができます。明示的に許可されないかぎり、データを共有することはできません。

パスワード・ベース認証に加え、Oracle Databaseは、公開キー証明書、RADIUSおよびKerberosもサポートします。Oracle Enterprise User Securityを使用して、データベースを認証および認可用の既存のLDAPリポジトリに統合できます。これらの機能によって、データベースにアクセスするユーザーのIDがより確実に保証されます。

Oracle Database Vaultを使用して、管理および特権ユーザー・アクセスを管理し、アプリケーション・データにどのように、いつ、どこでアクセスできるかを制御できます。Oracle Database Vaultは、盗まれたログイン資格証明の悪用、アプリケーション・バイパス、およびアプリケーションとデータに対する未認可の変更(アプリケーション・データのコピー作成の試みを含む)を阻止します。Oracle Database Vaultは、ほとんどのアプリケーションおよび日常業務に対して透過的です。多元的な認可ポリシーをサポートし、企業活動を中断することなくポリシーのセキュアな強制を可能にします。

Oracle Database Vaultでは、職務分離を強制し、アカウント管理、セキュリティ管理、リソース管理および他の機能が、それらの権限を持つことを認可されたユーザーにのみ許可されるようにできます。

2.4.3 ストレージ・アクセスの制御

Oracle Exadata System Softwareは、オープン・セキュリティ、Oracle ASMを有効範囲にしたセキュリティ、およびデータベースを有効範囲にしたセキュリティのアクセス制御モードをサポートしています。

  • オープン・セキュリティでは、データベースがどのグリッド・ディスクにもアクセスできます。

  • Oracle ASMを有効範囲にしたセキュリティでは、1つ以上のOracle ASMクラスタに割り当てられた複数のデータベースで特定のグリッド・ディスクを共有できます。

    Oracle ASMは、そのアクセス制御モード全体に加えて、ディスク・グループおよびファイル・レベルでのアクセス制御をサポートし、認可されたユーザーのみがディスクに格納されたコンテンツにアクセスできるようにします。

    注意:

    • /etc/oracle/cell/network-config/cellkey.oraファイルは、Oracle Grid Infrastructureの特定の一意のグループ(asmadminなど)に所属するソフトウェア・インストールの所有者のみが読み取れるようにする必要があります。

    • Oracle Grid Infrastructureホーム内のkfodユーティリティを使用してトラブルシューティングを行うか、クラスタでアクセス可能なディスクを確認します。

  • データベースを有効範囲にしたセキュリティは、粒度が最も細かいレベルのアクセス制御であり、特定のデータベースのみが特定のグリッド・ディスクにアクセスできます。

    データベースを有効範囲にしたセキュリティは、コンテナ・レベルで機能します。これは、グリッド・ディスクをコンテナ・データベース(CDB)または非CDBDB_UNIQUE_NAMEで使用可能にする必要があることを意味します。そのため、プラガブル・データベース(PDB)単位でデータベースを有効範囲にしたセキュリティを設定することはできません。

    注意:

    データベースを有効範囲にしたセキュリティの設定は、Oracle ASMを有効範囲にしたセキュリティを構成およびテストしてから行ってください。

デフォルトでは、ストレージ・サーバーでSSHが有効化されています。必要に応じて、SSHアクセスをブロックするためにストレージ・サーバーをロックできます。その場合でも、計算ノード上で実行されている、HTTPSおよびREST APIの使用によりセル上で実行されているWebサービスと通信するexacliを使用して、ストレージ・サーバーでの操作は実行できます。これは、CellCLIでユーザーおよびロールを作成してからremoteLoginを無効にすることで、高いレベルで実現されます。

2.5 暗号化サービスの使用

Oracle Exadata Database Machineにはネットワーク暗号化サービスが含まれています。

保存済、移動中および使用中の情報を保護および検証するための要件では、多くの場合、暗号化サービスが採用されます。暗号化と復号化からデジタル・フィンガープリントと証明書検証まで、暗号化はIT組織で最も広く採用されるセキュリティ制御の1つです。

Oracle Exadata Database Machineでは、可能な場合は常にIntel AES-NIおよびOracle SPARCによって提供されるプロセッサ・チップ上のハードウェアベースの暗号化エンジンが使用されます。暗号化操作にハードウェアを使用すると、ソフトウェアでその操作を実行するよりも、パフォーマンスが大幅に高くなります。どちらのエンジンでもハードウェアで暗号化操作を実行でき、かつ、どちらもデータベース・サーバーおよびストレージ・サーバー上のOracleソフトウェアによって活用されます。

ネットワーク暗号化サービスでは、暗号で保護されたプロトコルを使用することによって通信の機密保持および整合性が保護されます。たとえば、セキュア・シェル(SSH)アクセスでは、システムおよびIntegrated Lights Out Manager (ILOM)へのセキュアな管理アクセスが提供されます。SSL/TLSは、アプリケーションと他のサービス間のセキュアな通信を可能にできます。

データベースの暗号化サービスは、Oracle Advanced Securityから使用できます。Oracle Advanced Securityはデータベース内の情報を透過的データ暗号化(TDE)機能を使用して暗号化します。TDEでは、アプリケーション表領域の暗号化、および表内の個々の列の暗号化がサポートされます。一時表領域に格納されたデータ、およびREDOログも暗号化されます。データベースがバックアップされると、データは宛先メディアで暗号化されたままになります。これにより、物理的にどこに格納された場合にも、保存済の情報が保護されます。格納されたデータベース・コンテンツの機密保持、データベースの暗号化(表領域レベルまたは列レベル)に関心のある組織では、Oracle Advanced Securityを検討する必要があります。

さらに、Oracle Advanced Securityは、ネイティブ暗号化またはSSLを使用してOracle Net ServicesおよびJDBCトラフィックを暗号化し、ネットワークでの移動中に情報を保護できます。管理接続とアプリケーション接続の両方を保護し、移動中のデータが保護されるようにできます。SSLの実装では、匿名(Diffie-Hellman)、X.509証明書を使用したサーバーのみの認証、X.509による相互(クライアント-サーバー)認証などの一連の標準認証方式がサポートされます。

2.6 Oracle Exadata Database Machineの監視および監査

コンプライアンス・レポートのためであれ、インシデント応答のためであれ、監視と監査は、組織がIT環境の可視性を高めるために使用する必要がある重要な機能です。

監視と監査が行われる程度は、多くの場合、環境のリスクまたは重要度に基づきます。Oracle Exadata Database Machineは、サーバー、ネットワーク、データベースおよびストレージ・レイヤーで包括的な監視および監査機能を提供し、組織の監査およびコンプライアンス要件をサポートする情報を組織が使用できるように設計されています。

2.6.1 Oracle Exadata Database Machineの監視および監査

AIDEは、システムに対する悪質な変更または計画外の変更をレポートするセキュリティ機能です。

Oracle Exadata System Softwareリリース19.1.0では、Exadataシステム上のファイルへの不正アクセスを防止するために、Advanced Intrusion Detection Environment (AIDE)のサポートが追加されました。AIDEは、システム上にファイルのデータベースを作成し、そのデータベースを使用してファイルの整合性を確認して、システム侵入を検出します。AIDEの詳細は、https://en.wikipedia.org/wiki/Advanced_Intrusion_Detection_Environment参照してください。

Oracle Exadata Database Machineでは、AIDEがシステム(ファイルまたはディレクトリ)への計画外の変更を識別したときに、管理サーバー(MS)のアラートが生成されます。

ソフトウェアのインストールや構成が行われている非本番システムまたは一時的にNON-PRODUCTIONとみなされているシステムでは、AIDEは誤検出を含む大量のアラートを生成することがあります。システムがNON-PRODUCTIONモードの場合は、/opt/oracle.SupportTools/exadataAIDE -disableコマンドを実行して、各計算ノードでAIDEを一時的に無効にすることをお薦めします。

PRODUCTIONに戻されたシステムの場合、ソフトウェア・インストールをロック・ダウンした後の最後のステップの1つは、次のコマンドを実行することによるAIDEデータベースの最終更新である必要があります。

  • /opt/oracle.SupportTools/exadataAIDE -enable — AIDEが以前に無効にされていた場合

  • /opt/oracle.SupportTools/exadataAIDE -u — 新しいAIDEデータベース・ベースラインを生成する場合

PRODUCTIONデータベース・サーバーのいずれかで構成を変更する必要がある場合は、変更後に/opt/oracle.SupportTools/exadataAIDE -uコマンドを実行して、AIDEデータベースの更新を実行します。

注意:

AIDEデータベースを更新すると、オープンしているすべてのAIDE MSアラートがクリアされます。

2.6.2 Oracle Databaseアクティビティの監視および監査

Oracle Databaseのファイングレイン監査のサポートによって、組織は監査レコードの生成時期を選択的に決定するポリシーを確立できます。

ポリシーを確立すると、組織は他のデータベース・アクティビティに集中し、監査アクティビティに関連付けられることの多いオーバーヘッドを削減できます。

Oracle Audit Vaultはデータベース監査設定の管理を一元化し、セキュアなリポジトリへの監査データの統合を自動化します。Oracle Audit Vaultには、特権ユーザーのアクティビティやデータベース構造への変更を含む広範なアクティビティを監視するための組込みレポートが含まれています。Oracle Audit Vaultで生成されるレポートによって、様々なアプリケーションおよび管理データベースのアクティビティを可視化し、アクションのアカウンタビリティをサポートする詳細な情報を取得できます。

Oracle Audit Vaultを使用すると、未認可アクセスの試みやシステム権限の不正使用を示す可能性のあるアクティビティのプロアクティブな検出および警告が可能になります。これらの警告には、特権ユーザー・アカウントの作成や機密情報を含む表の変更などの、システム・イベントとユーザー定義イベントの両方を含めることができます。

Oracle Database Firewall Remote Monitorは、リアルタイムのデータベース・セキュリティ監視を提供できます。Oracle Database Firewall Remote Monitorはデータベース接続を問い合せて、アプリケーション・バイパス、未認可のアクティビティ、SQLインジェクション、その他の脅威などの悪意のあるトラフィックを検出します。Oracle Database Firewallは正確なSQLグラマーベースのアプローチを使用することによって、疑わしいデータベース・アクティビティを組織が迅速に識別できるようにします。

2.6.3 Oracle Exadata Storage Server上でのオペレーティング・システム・アクティビティの監視

各Oracle Exadata Storage Serverは、システム・レベルのアクティビティを監査するようにauditdで構成されています。

監査を管理してレポートを生成するには、auditctlコマンドを使用します。監査ルールは/etc/audit/audit.rulesファイルにあります。パッチ・セットを適用すると、変更は保持されません。

Oracle Exadata System Softwareリリース19.1.0およびOracle Linux 7以降、Oracle Exadata Database Machineに固有の監査ルールは/etc/audit/rules.d/01-exadata_audit.rulesファイルに格納されます。

auditdサービスが起動すると、augenrulesユーティリティが実行されます。このユーティリティは、監査ルール・ディレクトリ/etc/audit/rules.dにあるすべてのコンポーネント監査ルール・ファイルをマージし、マージされた結果を/etc/audit/audit.rulesファイルに配置します。コンポーネント監査ルール・ファイルは、augenrulesによって処理されるには、.rulesで終わる必要があります。/etc/audit/rules.dディレクトリ内の他のすべてのファイルは無視されます。ファイルは、自然ソート順に基づいて連結され、空の行およびコメント(#)行は削除されます。Oracle Exadata Database Machineに固有の監査ルールは、/etc/audit/rules.dディレクトリ(/etc/audit/rules.d/20-customer_audit.rulesなど)内の個別の監査ルール・ファイルに配置する必要があります。

以前のリリースのOracle Exadata System Softwareと同様に、監査ルールは不変です。監査ルールに対する変更を有効にするには、再起動が必要です。

2.7 品質サービスの管理

アプリケーションに対する攻撃には、境界違反やアクセス制御ポリシーの破壊以外にも様々な方法があります。

Oracle Exadata Database Machineには、リソースを枯渇させる攻撃、DoS攻撃、およびサービスとデータの可用性に影響する可能性がある偶発的または故意の障害の検出と防止に役立つ、数多くの機能が備えられています。

Oracle Exadata System Softwareには、データベース間のI/Oリソースおよびデータベース内のI/Oリソースを管理するI/Oリソース管理(IORM)が含まれます。IORMにより、異なるパフォーマンス要件を持つ様々なデータベースで共通のOracle Exadata Storage Serverプールを共有できます。同じデータベース内の複数のワークロードに独自のリソース・ポリシーを定義できます。この柔軟なアーキテクチャによって、組織では統合アーキテクチャでの操作時に重要なワークロードおよびデータベースでI/Oリソースを共有できます。

Oracle Databaseには、複数のデータベースが同じオペレーティング・システムで稼働できるようにするツールが含まれています。Oracle Database Resource Managerおよびインスタンス・ケージングでは、粒度の細かい方法を使用してCPUリソースへのアクセスを動的に制御する機能をサポートしています。Oracle Database Resource Managerは、並列度の程度、アクティブなセッションの数および他の共有リソースを制御して、共有データベース・アーキテクチャで必要なリソースを1つのデータベースが独占することを防止できます。

Oracle Database Quality of Service Management (Oracle Database QoS Management)は、システム全体のワークロード・リクエストを監視する自動化されたポリシーベースのソリューションです。Oracle Database QoS Managementは正確なランタイム・パフォーマンスとリソース・メトリックを相互に関連付け、データを分析してボトルネックを特定し、動的な負荷状態でパフォーマンス目標を維持する推奨リソース調整を作成します。

2.8 セキュアな管理のためのOracle ILOMの使用

個々のアプリケーションとサービスを適切に保護するには、セキュリティ制御および機能を組み合せる必要があります。

デプロイされたサービスおよびシステムのセキュリティを維持するための包括的な管理機能を持つことも、同様に重要となります。Oracle Exadata Database MachineではILOMのセキュリティ管理機能が使用されます。

ILOMは、多数のOracle Exadata Database Machineコンポーネントに組み込まれたサービス・プロセッサです。次のようなバンド外管理アクティビティを実行するために使用されます。

  • データベースおよびストレージ・サーバーのセキュアな停電管理を実行するためのセキュアなアクセスの提供。アクセスには、SSLによって保護されたWebベースのアクセス、セキュア・シェルを使用したコマンドライン・アクセス、IPMI TLSプロトコルおよびSNMPv3プロトコルが含まれます。

  • ロールベースのアクセス制御モデルを使用した職務要件の分離。各ユーザーは、実行できる機能が制限された特定のロールに割り当てられます。

  • すべてのログオンおよび構成変更の監査レコードの提供。各監査ログ・エントリには、アクションを実行しているユーザーおよびタイムスタンプが表示されます。これにより、組織は未認可のアクティビティや変更を検出し、それらのアクションを特定のユーザーと関連付けることができます。

2.9 セキュアな環境に関する考慮事項

Oracle Exadata Database Machineには、組織の特定のポリシーと要件を満たすように調整できる、数多くの階層化されたセキュリティ制御が含まれています。

組織はこれらの機能を最大限に活用する方法を評価し、これらの機能を既存のITセキュリティ・アーキテクチャに統合する必要があります。IT管理の効果を高めるには、リスク管理および管理上の措置を確実に施行するための人材、プロセスおよび技術を検討する必要があります。措置およびポリシーは、Oracle Exadata Database Machineの計画、インストールおよびデプロイメントの各段階で設計し、レビューする必要があります。

Oracle Exadata Database Machineに統合されている機能の多くはデフォルトでセキュアなデプロイメントを実現するために構成されていますが、組織には独自のセキュリティ構成標準があります。Oracle Exadata Database Machineコンポーネントに対するセキュリティ設定変更をテストする前に、Oracleセキュリティ情報を再確認することが重要です。特に、既存の標準を改善できる場所、およびサポート問題によって特定のコンポーネントに加えることができる変更が制限される可能性がある場所を特定することが重要です。

注意:

攻撃面を最小化するために、Oracle Exadata Storage Serverでは、その管理インタフェース以外でのカスタマイズをサポートしていません。ストレージ・サーバーではカスタム・ユーザーは許可されません。サーバーは特定の目的で最適化および強化されています。

2.9.1 アイデンティティおよびアクセス管理に関する考慮事項

Oracle Exadata Database Machineコンポーネントおよびデプロイされたサービスを組織の既存のアイデンティティおよびアクセス管理アーキテクチャに統合する際は、統合されたアプローチを使用する必要があります。

Oracle Databaseでは、既存のアイデンティティおよびアクセス管理デプロイメントとの統合を可能にする、数多くのオープン・プロトコルおよび標準プロトコルをサポートしています。アプリケーションの可用性を確保するために、統合されたアイデンティティおよびアクセス管理システムを使用できる必要があり、使用できない場合、Oracle Exadata Database Machineの可用性が損なわれる可能性があります。

Oracle Exadata Database Machineが到着する前に、次のセキュリティ上の考慮事項について検討してください。これらの考慮事項は、Oracle Exadata Database Machineに関するOracleベスト・プラクティスに基づいています。

  • rootgridoracleなどの共通のオペレーティング・システム・アカウントに直接ログインする機能は、無効にする必要があります。各管理者に対して個別のユーザー・アカウントを作成する必要があります。個別のアカウントでログインした後、管理者は必要に応じてsudoを使用して特権コマンドを実行できます。

  • Oracle Exadata Database Machine内の可視性を高めるための、ホストベースの侵入検知および侵入防止システムの使用。Oracle Databaseのファイングレイン監査機能を使用することによって、ホストベースのシステムが不適切なアクションおよび未認可のアクティビティを検出できる可能性が高まります。

  • 相関、分析およびレポートの向上に向けてセキュリティ関連情報を集約するための一元化された監査およびログ・リポジトリの使用。Oracle Exadata Storage Serverは、CELL属性syslogConfによってこれをサポートします。データベース・サーバーは、通常のシステム構成方法を使用して一元化されたロギングをサポートします。

  • 透過的データ暗号化(TDE)Oracle Recovery Manager (RMAN)暗号化など、バックアップのための暗号化機能の使用。

データおよびシステムのセキュリティは、ユーザー・アクセスとパスワードのセキュリティによって低下します。ユーザー・セキュリティを最大化するために、次のガイドラインをお薦めします。

  • Oracle Grid InfrastructureOracle Databaseソフトウェアのインストールに個別のソフトウェア所有者アカウントを作成します。これらのアカウントは、Oracle Exadata Database Machineのデプロイ時に使用する必要があります。DBを有効範囲にしたセキュリティを実装するには、Oracle Grid InfrastructureOracle Databaseソフトウェアのインストール用に個別のソフトウェア所有者が必要です。

  • 最小要件を超える複雑さのパスワードを強制するユーザー・パスワード・ポリシーを実装します。
  • パスワード・エージングとアカウントのロックを実装します。Oracle Exadata System Softwareリリース19.1.0以降では、DBSERVERおよびCELL属性を使用して、次のアカウント・セキュリティ機能を構成できます。
    • ユーザーのパスワードは、指定した日数後に期限切れになります。ユーザー・パスワードのデフォルトの有効期限は0です。0の場合、パスワードは期限切れになりません。
    • パスワードが期限切れになる前の指定した日数の間、ユーザーがログインするときに警告メッセージが表示されます。ユーザー・アカウントのパスワード期限切れ警告時間は、デフォルトで7日間です。

    • パスワードの有効期限が切れてから、指定した日数の間、ユーザーがログインするとパスワードの変更を求められます。サーバーのremotePwdChangeAllowed属性で、パスワードの変更にサービス・リクエストが不要と指定している場合、ユーザーはすぐにパスワードを変更できます。そうでない場合、パスワードを変更するにはユーザーがサーバー管理者に連絡する必要があります。

    • パスワードの有効期限が切れると、ユーザー・アカウントは指定された日数の間ロックされます。ユーザー・アカウントのロック時間は、デフォルトで7日間です。アカウントがロックされた後でアカウントのロックを解除するには、サーバー管理者への連絡が必要になります。

2.9.2 ネットワーク・セキュリティに関する考慮事項

Oracle Exadata Database Machineが到着する前に、次のネットワーク・セキュリティ上の考慮事項について検討してください。

次の考慮事項は、Oracle Exadata Database Machineに関するOracleベスト・プラクティスに基づいています。

  • Oracle Exadata Database Machineとの間のネットワーク・トラフィックのフローを監視するための、データベース・サーバー上での侵入防止システムの使用。このようなシステムを使用すると、疑わしい通信、潜在的な攻撃パターンおよび未認可アクセスの試みを特定できます。

  • Oracle Exadata Database Machineとの間での情報のフローを保護するための、アプリケーション・レイヤー・ファイアウォールおよびネットワーク・レイヤー・ファイアウォールの使用。ネットワーク・ポートのフィルタリングにより、システムおよびサービスへの未認可アクセスを防止する第1の防御が提供されます。

    Ethernet仮想ローカル・エリア・ネットワーク(VLAN)を使用したネットワークレベルのセグメンテーションと、インバウンドおよびアウトバウンドのネットワーク・ポリシーをホスト・レベルで強制するホストベースのファイアウォール。セグメンテーションを使用すると、Oracle Exadata Database Machineのコンポーネント間通信のファイングレイン制御が可能になります。Oracle Exadata Storage Serverには構成済のソフトウェア・ファイアウォールがデフォルトで含まれます。ソフトウェア・ファイアウォールを使用してデータベース・サーバーを構成できます。

  • Oracle Data Guardスタンバイ・データベースへのトラフィックを暗号化するためのOracle Advanced Securityなどの暗号化機能の使用。

データおよびシステムのセキュリティは、脆弱なネットワーク・セキュリティによって低下します。Ethernetネットワーク・セキュリティを最大化するために、次のガイドラインをお薦めします。

  • 管理サービスと運用サービスを現在のポリシーと一致する暗号化プロトコルおよびキー長を使用するように構成します。Oracle Exadata Database Machineによって提供される暗号化サービスは、ハードウェア・アクセラレーションを利用して、パフォーマンスに影響を与えずにセキュリティを向上させることができます。

  • Oracle Exadata Database Machineのスイッチを管理し、ネットワーク上のデータ・トラフィックから分離します。この分離は、バンド外とも呼ばれます。

  • 仮想ローカルエリアネットワーク(VLAN)を使用することによって、機密性のあるクラスタをネットワークのその他の部分から切り離します。これにより、それらのクライアントやサーバーに格納された情報にアクセスされる可能性が少なくなります。

  • 静的VLAN構成を使用します。

  • スイッチの未使用のポートは無効にし、未使用のVLAN番号を割り当てます。

  • トランクポートには、一意のネイティブVLAN番号を割り当てます。

  • VLANでのトランク経由のトランスポートは、どうしても必要な場合のみにします。

  • VLAN Trunking Protocol (VTP)は、可能な場合は無効化します。無効化できない場合は、VTPに対して管理ドメイン、パスワードおよびプルーニングを設定します。さらに、VTPを透過モードに設定します。

  • TCPスモール・サーバーやHTTPなど、不要なネットワーク・サービスは無効にします。必要なネットワーク・サービスのみを有効にして、セキュアに構成します。

  • 提供されるポート・セキュリティ機能のレベルはネットワーク・スイッチによって異なります。これらのポート・セキュリティ機能がある場合は、使用してください。

  • 接続された1つ以上のデバイスのメディア・アクセス制御(MAC)アドレスをスイッチの物理ポートに固定します。スイッチのポートを特定のMACアドレスに固定すると、スーパーユーザーは不正アクセス・ポイントを利用するネットワークへのバックドアを作成できません。

  • 指定したMACアドレスからのスイッチへの接続を無効にします。

  • スイッチのポートごとに現在の接続に基づいてセキュリティを設定できるように、各ポートの直接接続を使用します。

ネットワーク図

次の図は、RDMA over Converged Ethernet (RoCE)を使用するOracle Exadata Database Machine X8M-2のデフォルト・ネットワークを示しています。各Oracle Exadata Database Machineには、少なくとも2つのイーサネット・ネットワークと1つのRDMA over RoCE Network Fabricネットワークが必要です。

図2-1 結合クライアント・アクセスを使用するOracle Exadata Database Machine X8M-2のネットワーク



次の図に、RDMA over InfiniBand Network Fabricを使用するOracle Exadata Database Machine X7-2およびX8-2のデフォルト・ネットワークを示します。各Oracle Exadata Database Machineには、少なくとも2つのイーサネット・ネットワークと1つのRDMA over InfiniBand Network Fabricネットワークが必要です。

図2-2 結合クライアント・アクセスを使用するOracle Exadata Database Machine X7-2およびX8-2のネットワーク

図2-2の説明が続きます
「図2-2 結合クライアント・アクセスを使用するOracle Exadata Database Machine X7-2およびX8-2のネットワーク」の説明

図2-3は、Oracle Exadata Database Machine X6-2、X5-2、X4-2、X3-2およびX2-2のデフォルトのネットワークを示しています。各Oracle Exadata Database Machineには、少なくとも2つのイーサネット・ネットワークと1つのRDMA over InfiniBand Network Fabricネットワークが必要です。

図2-3 結合クライアント・アクセスを使用するOracle Exadata Database Machine X6-2、X5-2、X4-2、X3-2およびX2-2のネットワーク

図2-3の説明が続きます
「図2-3 結合クライアント・アクセスを使用するOracle Exadata Database Machine X6-2、X5-2、X4-2、X3-2およびX2-2のネットワーク」の説明

図2-4は、Oracle Exadata Database Machine X6-8、X5-8およびX4-8フル・ラックのデフォルトのネットワークを示しています。各Oracle Exadata Database Machineには、少なくとも2つのイーサネット・ネットワークと1つのRDMA over InfiniBand Network Fabricネットワークが必要です。

図2-4 結合クライアント・アクセスを使用するOracle Exadata Database Machine X6-8、X5-8およびX4-8フル・ラックのネットワーク

図2-4の説明が続きます
「図2-4 結合クライアント・アクセスを使用するOracle Exadata Database Machine X6-8、X5-8およびX4-8フル・ラックのネットワーク」の説明

図2-5は、Oracle Exadata Database Machine X3-8 フル・ラックおよびOracle Exadata Database Machine X2-8フル・ラックのデフォルトのネットワークを示しています。各Oracle Exadata Database Machineには、少なくとも2つのイーサネット・ネットワークと1つのRDMA over InfiniBand Network Fabricネットワークが必要です。

図2-5 結合クライアント・アクセスを使用するOracle Exadata Database Machine X3-8 フル・ラックおよびOracle Exadata Database Machine X2-8フル・ラックのネットワーク図

図2-5の説明が続きます
「図2-5 結合クライアント・アクセスを使用するOracle Exadata Database Machine X3-8フル・ラックおよびOracle Exadata Database Machine X2-8フル・ラックのネットワーク図」の説明

2.10 デフォルトのセキュリティ設定の理解

Oracle Exadata System Softwareは、多数のデフォルトのセキュリティ設定を使用してインストールされます。

可能かつ現実的な場合は、常に、セキュアなデフォルト設定を選択して構成します。Oracle Exadata Database Machineでは、次のデフォルト設定が使用されます。

  • 攻撃面を縮小するために、最小限のソフトウェアがインストールされます。

  • Oracle Databaseのセキュアな設定が、Oracleベスト・プラクティスを使用して開発および実装されています。

  • パスワード・ポリシーによって、最小限のパスワードの複雑度が強制されます。

  • ログイン試行が失敗すると、設定された回数試行が失敗した後、ロックアウトが発生します。

  • オペレーティング・システムのすべてのデフォルトのシステム・アカウントはロックされ、ログインが禁止されます。

  • suコマンドの使用が制限されています。

  • ブート・ローダーのインストールがパスワードで保護されています。

  • インターネット・サービス・デーモン(inetd/xinetd)を含むすべての不要なシステム・サービスが無効化されています。

  • ストレージ・セルにソフトウェア・ファイアウォールが構成されています。

  • 主要なセキュリティ関連構成ファイルおよび実行可能ファイルに対するファイル権限が制限されています。

  • SSHリスニング・ポートが管理ネットワークおよびプライベート・ネットワークに制限されています。

  • SSHがv2プロトコルに制限されています。

  • セキュアでないSSH認証メカニズムが無効化されています。

  • 特定の暗号化暗号が構成されています。

  • 不要なプロトコルおよびモジュールがオペレーティング・システム・カーネルから無効化されています。