自動サーバー・インストール時の FIPS 準拠の有効化

このタスクについて

サーバーのインストール中に有効にする
BigFix® Remote Control Server で FIPS 準拠を有効にするには、Remote Control サーバー・インストーラーを実行し、「Web サーバーのパラメーター」パネルで「FIPS を有効にする」「NIST SP800-131A を有効にする」を選択します。
手動で有効にする
FIPS 準拠を有効にするには、以下の手順に従って Remote Control サーバー・インストーラーを実行する代わりに、BigFix® Remote Control サーバーで手動で構成できます。

手順

  1. 以下のディレクトリーにある java.security ファイルを編集します。
    Windows® システム
    %TRC_SERVER_PATH%\java\jre\lib\security\java.security

    ここで、%TRC_SERVER_PATH%BigFix® Remote Control Server のインストール・ディレクトリーのパスです。

    Linux® / UNIX® システム
    $TRC_SERVER_PATH/java/jre/lib/security/java.security

    ここで、$TRC_SERVER_PATHBigFix® Remote Control Server のインストール・ディレクトリーのパスです。

  2. security.provider.x= list を変更して、 以下の項目をリストの先頭に記述します。

    security.provider.1=com.ibm.crypto.FIPS.provider.IBMJCEFIPS

    このリストの他の項目の順序番号を、 すべての項目が連続した番号になるように修正してください。

    例:
    • Remote Control Server ビルド 10.0.0.0808 以降で変更が実行された後の完全なリストは、以下のとおりです。
      security.provider.1=com.ibm.crypto.plus.provider.IBMJCEPlusFIPS
      security.provider.2=com.ibm.jsse2.IBMJSSEProvider2
      security.provider.3=com.ibm.crypto.plus.provider.IBMJCEPlus
      security.provider.4=com.ibm.crypto.provider.IBMJCE
      security.provider.5=com.ibm.security.jgss.IBMJGSSProvider
      security.provider.6=com.ibm.security.cert.IBMCertPath
      security.provider.7=com.ibm.security.sasl.IBMSASL
      security.provider.8=com.ibm.xml.crypto.IBMXMLCryptoProvider
      security.provider.9=com.ibm.xml.enc.IBMXMLEncProvider
      security.provider.10=com.ibm.security.jgss.mech.spnego.IBMSPNEGO
      security.provider.11=sun.security.provider.Sun
    • Remote Control Server ビルド 10.0.0.0807 以前で変更が実行された後の完全なリストは、以下のとおりです。
      security.provider.1=com.ibm.fips.jsse.IBMJSSEFIPS
      security.provider.2=com.ibm.crypto.fips.provider.IBMJCEFIPS
      security.provider.3=com.ibm.jsse2.IBMJSSEProvider2
      security.provider.4=com.ibm.crypto.provider.IBMJCE
      security.provider.5=com.ibm.security.jgss.IBMJGSSProvider
      security.provider.6=com.ibm.security.cert.IBMCertPath
      security.provider.7=com.ibm.security.sasl.IBMSASL
      security.provider.8=com.ibm.xml.crypto.IBMXMLCryptoProvider
      security.provider.9=com.ibm.xml.enc.IBMXMLEncProvider
      security.provider.10=com.ibm.security.jgss.mech.spnego.IBMSPNEGO
      security.provider.11=sun.security.provider.Sun
  3. 以下の行を追加します。
    ssl.SocketFactory.provider=com.ibm.jsse2.SSLSocketFactoryImpl
    ssl.ServerSocketFactory.provider=com.ibm.jsse2.SSLServerSocketFactoryImpl
    
  4. ファイルを保存します。
  5. 以下のディレクトリーにある jvm.options を編集します。
    Windows® システム
    %TRC_SERVER_PATH% \wlp\usr\servers\trcserver\jvm.options

    ここで、%TRC_SERVER_PATH%BigFix® Remote Control Server のインストール・ディレクトリーのパスです。

    Linux® / UNIX® システム
    $TRC_SERVER_PATH/wlp/usr/servers/trcserver/jvm.options

    ここで、$TRC_SERVER_PATHBigFix® Remote Control Server のインストール・ディレクトリーのパスです。

  6. 以下の行を追加します。
    • Remote Control Server ビルド 10.0.0.0808 以降
      -Dcom.ibm.jsse2.usefipsprovider=true
      -Dcom.ibm.jsse2.sp800-131=strict
      -Dcom.ibm.jsse2.overrideDefaultTLS=true 
      -Dcom.ibm.jsse2.usefipsProviderName=IBMJCEPlusFIPS
    • Remote Control Server ビルド 10.0.0.0807 以前
      -Dcom.ibm.jsse2.usefipsprovider=true
      -Dcom.ibm.jsse2.sp800-131=strict
      -Dcom.ibm.jsse2.overrideDefaultTLS=true 
      
  7. ファイルを保存します。
  8. 有効な管理者 ID およびパスワードを使用して、BigFix® Remote Control Server にログオンします。
  9. 「アドミニストレーター」 > 「プロパティー・ファイルを編集」をクリックします。
  10. common.properties ファイルで、FIPS.compliance を true に設定します。
  11. 「送信」をクリックします。
  12. 「アドミニストレーター」 > 「アプリケーションをリセット」をクリックします。サーバー・サービスを再起動します。
  13. サーバー・サービスを再起動します。

タスクの結果

以下の手順を実行することで、BigFix® Remote Control Server が FIPS に対応するように構成されているかどうか確認します。

  • 「アドミニストレーター」 > 「現在のサーバー状況を表示」をクリックします。

以下のフィールドで、FIPS 準拠が有効であることが示されます。

  • FIPS モードが使用可能になりました: このフィールドの値は、common.properties ファイルの FIPS.compliance プロパティーによって決定されます。
  • JVM が FIPS 用に構成されました: このフィールドの値は、JVM および java.security ファイルにリストされたセキュリティー・プロバイダーの構成によって決定されます。
トラブルシューティング:
  • ブラウザーまたはコントローラーと Remote Control サーバーの接続に失敗することがある

    サーバーが FIPS モードで動作するように構成されていて、messages.log ファイル java.lang.NullPointerException com.ibm.ws.channel.ssl.internal.SSLConnectionLink 238 に次の例外がある場合、 ブラウザーまたはコントローラーと Remote Control サーバーの接続に失敗する可能性があります。

    これは、IBM Java 8.0.6.26 の採用による副作用です。問題が解決しない場合は、次の手順を実行します。
    1. Remote Control サーバーを停止します。
    2. ..\TRC\java\jre\lib\security\java.security ファイルを開き、RSAPSS 値を jdk.tls.disabledAlgorithms の最後のエントリーとして追加します。

      更新されたプロパティー・リストは、以下のようになります。

      jdk.tls.disabledAlgorithms=SSLv3, RC4, DES, MD5withRSA, DH keySize < 1024, DESede, \ EC keySize < 224, 3DES_EDE_CBC, anon, NULL, DES_CBC, RSAPSS
    3. Remote Control サーバーを開始します。
  • ブローカー・セッションへの参加操作に失敗することがある
    セカンダリー・コントローラーがプライマリー・コントローラーに接続し、FIPS モードで動作するように環境が構成されている場合、ブローカー・セッションへの参加操作に失敗する可能性があります。プライマリー・コントローラーは、messages.log ファイルに次のような例外を表示する場合があります。
    SEVERE - The connection was refused with pkt type [260]

    これは、IBM Java 8.0.6.26 の採用による副作用です。問題が解決しない場合は、次の手順を実行します。

    ..\Controller\jre\lib\security\java.security ファイルを開き、RSAPSS 値を jdk.tls.disabledAlgorithms の最後のエントリーとして追加します。更新されたプロパティー・リストは、以下のようになります。
    jdk.tls.disabledAlgorithms=SSLv3, RC4, DES, MD5withRSA, DH keySize < 1024, DESede, \ EC keySize < 224, 3DES_EDE_CBC, anon, NULL, DES_CBC, RSAPSS
  • サーバーが FIPS モードで動作するように構成されている場合、サーバー Web インターフェースを介したセッション記録の再生が開始されず、エラー・メッセージが表示されないことがある

    これは、IBM Java 8.0.6.26 の採用による副作用です。問題が解決しない場合は、次の手順を実行します。
    1. サーバーから提供された TRCPlayer.trcjws ファイルを保存します。
    2. ファイルを編集し、この行を削除します。 <argument>--forcefips</argument>
    3. ファイルを保存し、TRCPlayer.trcjws ファイルをクリックして実行します。