DataPower のトラブルシューティング

「 Instana 」における DataPower の一般的な接続および設定の問題を解決するためのトラブルシューティングガイド。

DataPower でのハンドシェイク失敗の解決

エージェントのログにエラー handshake_failure が記録されているため、 Instana エージェントは DataPower に接続できません。 その結果、 DataPower は Instana のUIでは監視対象外となります。

根本原因

Instana エージェント( JVM )と DataPower の間で、Cipher Suiteまたは TLS のバージョンに不一致がある場合、ハンドシェイクエラーが発生します。 たとえば、 DataPower が RSA ベースの暗号(例: AES256-GCM-SHA384)のみを提供するように設定されている一方で、エージェント JVM がデフォルトで無効 TLS_RSA_* になっている場合、ハンドシェイクを完了するために使用できる共通の暗号は存在しません。

診断

問題を確認するには:

  1. DataPower が提供する暗号スイートを確認してください:

    openssl s_client -connect <datapower-host>:<port> -tls1_2 2>&1 | grep "Cipher is"
  2. JVM で無効化されたアルゴリズムを確認してください(パスはエージェントのインストール方法によって異なります):

    エージェント:

    cat agent-install-dir/jvm/conf/security/java.security | grep "jdk.tls.disabledAlgorithms"

解決策 1(回避策): JVM のセキュリティ設定を変更する

JVM のセキュリティファイルを編集します:

agent-install-dir/jvm/conf/security/java.security

前:

jdk.tls.disabledAlgorithms=SSLv3, TLSv1, TLSv1.1, DTLSv1.0, RC4, DES, \
    MD5withRSA, DH keySize < 1024, EC keySize < 224, 3DES_EDE_CBC, anon, NULL, \
    ECDH, TLS_RSA_*, \
    include jdk.disabled.namedCurves

指定の時間が経過後:

jdk.tls.disabledAlgorithms=SSLv3, TLSv1, TLSv1.1, DTLSv1.0, RC4, DES, \
    MD5withRSA, DH keySize < 1024, EC keySize < 224, 3DES_EDE_CBC, anon, NULL, \
    ECDH, \
    include jdk.disabled.namedCurves

instana エージェントを再始動します。

解決策 2(恒久的な解決策): DataPower を ECDHE で設定する

「 DataPower 」の XML 管理インターフェースの SSL プロファイルを設定し、 DataPower および Instana エージェント JVM の両方と互換性のあるECDHE暗号スイートをサポートするようにします。 一般的な暗号スイートには、次のようなものがあります:

  • ECDHE-RSA-AES256-GCM-SHA384

  • ECDHE-RSA-AES128-GCM-SHA256

DataPower, での SSL プロファイルの設定方法の詳細については、『 IBM DataPower 』のドキュメントを参照してください。