10.1 在 Identity Manager 擴送代理程式上設定 FIPS 模式

  1. 導覽至 /opt/netiq/common/jre/conf/security/ 目錄。

  2. 備份 java.security 檔案。

  3. 執行以下步驟來編輯 java.security 檔案:

    1. 搜尋字串 List of providers and their preference orders,註解化所有現有提供者,然後新增以下項目:

      security.provider.1=BCFIPS
      security.provider.2=BCJSSE
      security.provider.3=SunJSSE
      security.provider.4=SUN
      security.provider.5=SunJCE
    2. 搜尋字串 ssl.KeyManagerFactory.algorithm=SunX509,將其註解化,然後新增以下項目:

      ssl.KeyManagerFactory.algorithm=PKIX
    3. 搜尋字串 keystore.type,將其註解化,然後新增以下項目:

      keystore.type=bcfks
  4. 導覽至 /opt/netiq/common/jre/lib/security/。

  5. 備份 cacerts 檔案。

  6. 為了支援安全性增強,請使用以下指令將 cacerts 檔案轉換為 bcfks 格式:

    keytool -importkeystore -srckeystore cacerts -srcstorepass netiq123 -srcstoretype JKS -destkeystore cacerts -deststorepass netiq123 -deststoretype BCFKS -providerclass org.bouncycastle.jcajce.provider.BouncyCastleFipsProvider -providerpath $CLASSPATH
  7. 若要將金鑰儲存區檔案從 jks 格式轉換為 bcfks 格式,請執行以下指令:

    keytool -importkeystore -srckeystore /opt/novell/dirxml/fanoutagent/config/keystore.jks -srcstorepass changeit -srcstoretype PKCS12 -destkeystore /opt/novell/dirxml/fanoutagent/config/keystore.jks -deststorepass changeit -deststoretype BCFKS -providerclass org.bouncycastle.jcajce.provider.BouncyCastleFipsProvider -providerpath $CLASSPATH
  8. 導覽至 /opt/novell/dirxml/fanoutagent/bin/ 目錄,在 startAgent.sh 檔案中進行以下變更:

    ${JAVA} --add-opens=java.base/sun.security.internal.spec=ALL-UNNAMED -Djavax.net.ssl.trustStore=/opt/netiq/common/jre/lib/security/cacerts -Djavax.net.ssl.trustStorePassword=changeit -Dkeystore.type=BCFKS -Dorg.bouncycastle.fips.approved_only=true -Dorg.bouncycastle.rsa.allow_multi_use=true -cp ${CLASS_PATH} com.netiq.idm.fanoutagent.FanoutAgent $filename $SERVERONLY &
  9. 使用以下指令啟動擴送代理程式:

    ./startAgent -config ../config/fanoutagent-config.properties