Deep Security Managerとデータベース間の通信の暗号化

初期設定では、Deep Security Managerとデータベース間の通信は暗号化されません。これは、パフォーマンス上の理由と、Managerとデータベースが同じコンピュータ上で実行されているか、または両者がクロスケーブルやプライベートネットワークセグメント、IPSec経由のトンネンリングのいずれかで接続されているかにかかわらず、両者間のチャネルがすでに保護されているということを前提にしているからです。

したがって、Deep Security Managerとデータベース間の通信チャネルが保護されていない場合は、その間の通信を暗号化する必要があります。これを行うには、\Deep Security Manager\webclient\webapps\ROOT\WEB-INF\内のdsm.propertiesファイルを編集します。

複数ノードモードでDeep Security Managerを実行している場合は、以下の変更をノードごとに適用する必要があります。
Microsoft SQL ServerでTLS 1.2を使用して通信を暗号化する場合は、データベースがTLS 1.2をサポートしていることを確認し、サポートしていなければアップグレードしてください。TLS 1.2をサポートするMicrosoft SQL Serverのバージョンについては、こちらのMicrosoftの記事を参照してください。

Microsoft SQL Server (Linux)

Deep Security ManagerとMicrosoft SQL Serverデータベースの間の通信を暗号化するには

  1. Deep Security Managerのサービスを停止します。
    # service dsm_s stop
  2. /opt/dsm/webclient/webapps/ROOT/WEB-INF/dsm.propertiesを編集して次の行を追加します。
    database.SqlServer.ssl=require
  3. /opt/dsmに、次の行を含む「dsm_s.vmoptions」という名前のファイルを作成します。
    -Djsse.enableCBCProtection=false
  4. SQL Server構成マネージャを開き、インスタンスのプロトコルプロパティで [強制的に暗号化] を有効にします。

  5. Deep Security Managerのサービスを開始します。
    # service dsm_s start

詳細については、Microsoft MSDNサイトの データベース エンジンへの暗号化接続の有効化」を参照してください。

Microsoft SQL Server (Windows)

Deep Security ManagerとMicrosoft SQL Serverデータベースの間の通信を暗号化するには

  1. Deep Security Managerのサービスを停止します。
  2. \Program Files\Trend Micro\Deep Security Manager\webclient\webapps\ROOT\WEB-INF\dsm.propertiesを編集して次の行を追加します。
    database.SqlServer.ssl=require
  3. \Program Files\Trend Micro\Deep Security Managerの下に、Deep Security Manager.vmoptionsという名前のファイルを作成し、次の行を追加します。
    -Djsse.enableCBCProtection=false
  4. SQL Server構成マネージャを開き、インスタンスのプロトコルプロパティで [強制的に暗号化] を有効にします。

  5. Deep Security Managerのサービスを開始します。

詳細については、Microsoft MSDNサイトの データベース エンジンへの暗号化接続の有効化」を参照してください。

Oracle Database

Deep Security ManagerとOracle Databaseの間の通信を暗号化するには

  1. 次の行をdsm.propertiesに追加します (例)。

    database.Oracle.oracle.net.encryption_types_client=(AES256)
    database.Oracle.oracle.net.encryption_client=REQUIRED
    database.Oracle.oracle.net.crypto_checksum_types_client=(SHA1)
    database.Oracle.oracle.net.crypto_checksum_client=REQUIRED

  2. ファイルを保存して、閉じます。Deep Security Managerの再起動をします。

先頭に「database.Oracle.」が付いているすべてのパラメータがOracleドライバに渡されます。

encryption_types_clientに指定できる値は次のとおりです。

  • AES256
  • AES192
  • AES128
  • 3DES168
  • 3DES112
  • DES56C
  • DES40C
  • RC4_256
  • RC4_128
  • RC4_40
  • RC4_56

crypto_checksum_types_clientに指定できる値は次のとおりです。

  • MD5
  • SHA1

その他のオプションについては、https://docs.oracle.com/cd/B28359_01/java.111/b31224/clntsec.htmを参照してください。

データベースサーバでAgentを実行する

Agentを使用してデータベースを保護している場合は、暗号化を有効にする必要があります。セキュリティアップデートを実施すると、Deep Security Managerはデータベースに新規の侵入防御ルールを格納します。データが暗号化されていないと、Agentによるルールの解析の際に、ルール名が原因である誤判定がほぼ間違いなく発生してしまいます。