9.1 操作步骤

  1. 为 FIPS 创建一个新文件夹。示例:C:\fips

  2. 在新建的文件夹中备份以下文件:

    文件

    现有文件路径

    idm.jks

    C:\netiq\idm\apps\tomcat\conf

    OSP.jks

    tomcat.ks

    encrypt-keys.pkcs12

    server.xml

    ism-configuration.properties

    configupdate.bat

    C:\netiq\idm\apps\configupdate

    configupdate.bat.properties

  3. 导航到 <装入位置>\common\osp\misc 并将 osp-tomcat8-pwd-handler-<version>.jar 复制到 C:\netiq\idm\apps\tomcat\lib 文件夹。

  4. 导航到 C:\NetIQ\IDM\apps\tomcat\bin\ 文件夹,并如下所示编辑 setenv.bat 文件:

    • set JAVA_OPTS= %JAVA_OPTS% -Dorg.bouncycastle.fips.approved_only=true -Dinternal.osp.framework.fips-password=novell -Dorg.bouncycastle.rsa.allow_multi_use=true -Djavax.net.ssl.keyStoreType=BCFKS -Djavax.net.ssl.trustStoreType=BCFKS -Djavax.net.ssl.trustStore=c:\netiq\idm\apps\tomcat\conf\idm.bcfks -Djavax.net.ssl.trustStorePassword=novell

    • set BCFIPS_JARS=c:\netiq\common\jre\lib\bc-fips-1.0.2.5.jar;c:\netiq\common\jre\lib\bcpkix-fips-1.0.7.jar;c:\netiq\common\jre\lib\bctls-fips-1.0.19.jar

    • set CLASSPATH=C:\NetIQ\Common\JRE\lib\bc-fips-1.0.2.5.jar;C:\NetIQ\Common\JRE\lib\bcpkix-fips-1.0.7.jar;C:\NetIQ\Common\JRE\lib\bctls-fips-1.0.19.jar;%CLASSPATH%

    • 搜索 CATALINA_OPTS,将 encrypt-keys.pkcs12 更改为 encrypt-keys.bcfks,并将 storetype 更改为 bcfks

    注:确保 set JAVA_OPTS、set BCFIPS_JARS 和set CLASSPATH 值都放在 CATALINA_OPTS 前面。

  5. 在命令提示符处,导航到 C:\NETIQ\Commom\JRE\bin 并运行以下命令:

    keytool -importkeystore -srckeystore C:\NetIQ\IDM\apps\tomcat\conf\idm.jks -srcstorepass novell -srcstoretype PKCS12 -destkeystore C:\NetIQ\IDM\apps\tomcat\conf\idm.bcfks -deststorepass novell -deststoretype BCFKS -providerclass  org.bouncycastle.jcajce.provider.BouncyCastleFipsProvider -providerpath $CLASSPATH
    keytool -importkeystore -srckeystore C:\NetIQ\IDM\apps\tomcat\conf\tomcat.ks -srcstorepass -srcstoretype PKCS12 -destkeystore C:\NetIQ\IDM\apps\tomcat\conf\tomcat.bcfks -deststorepass -deststoretype BCFKS -providerclass  org.bouncycastle.jcajce.provider.BouncyCastleFipsProvider -providerpath $CLASSPATH
    keytool -importkeystore -srckeystore C:\NetIQ\IDM\apps\tomcat\conf\idm.jks -srcstorepass novell -srcstoretype PKCS12 -destkeystore C:\NetIQ\IDM\apps\osp\osp.bcfks -deststorepass novell -deststoretype BCFKS -providerclass  org.bouncycastle.jcajce.provider.BouncyCastleFipsProvider -providerpath $CLASSPATH
    keytool -importkeystore -srckeystore C:\NetIQ\IDM\apps\tomcat\conf\tomcat.ks -srcstorepass changeit -srcstoretype PKCS12 -destkeystore C:\NetIQ\IDM\apps\osp\osp.bcfks -deststorepass novell -deststoretype BCFKS -providerclass  org.bouncycastle.jcajce.provider.BouncyCastleFipsProvider -providerpath $CLASSPATH
    java -jar <mount-location>\common\osp\misc\osp-keymanager-6.7.7.jar -genkeys -keystore C:\NetIQ\IDM\apps\osp\osp.bcfks -storepass novell -storetype BCFKS -application idm -providerClass org.bouncycastle.jcajce.provider.BouncyCastleFipsProvider -providerPath C:\NetIQ\Common\JRE\lib\bc-fips-1.0.2.5.jar -keypass novell -use Encrypting,Signing,TLS
    keytool -importkeystore -srckeystore C:\NetIQ\IDM\apps\tomcat\conf\encrypt-keys.pkcs12 -srcstorepass changeit -srcstoretype PKCS12 -destkeystore C:\NetIQ\IDM\apps\tomcat\conf\encrypt-keys.bcfks -deststorepass changeit -deststoretype BCFKS -providerclass  org.bouncycastle.jcajce.provider.BouncyCastleFipsProvider -providerpath $CLASSPATH
  6. 如下所示编辑 server.xml 文件:

    <! --Connector port="8543" protocol="org.apache.coyote.http11.Http11NioProtocol" maxThreads="150" SSLEnabled="true" scheme="https" secure="true" clientAuth="false" sslProtocol="TLSv1.3" keystoreFile="conf/tomcat.ks" keystorePass="changeit" maxHttpHeaderSize="65536" sslEnabledProtocols="TLSv1.3" /--> <Connector protocol="com.microfocus.osp.tomcat.http.PasswordHttp11NioProtocol" port="8543" maxThreads="150" maxHttpHeaderSize="65536" SSLEnabled="true" scheme="https" secure="true"> <SSLHostConfig protocol="TLS" protocols="TLSv1.3" ciphers="TLS_DHE_DSS_WITH_AES_128_GCM_SHA256,TLS_DHE_DSS_WITH_AES_256_GCM_SHA384,TLS_DHE_DSS_WITH_AES_128_CBC_SHA256,TLS_DHE_DSS_WITH_AES_128_CBC_SHA,TLS_DHE_DSS_WITH_AES_256_CBC_SHA256,TLS_DHE_DSS_WITH_AES_256_CBC_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA,TLS_RSA_WITH_AES_128_GCM_SHA256,TLS_RSA_WITH_AES_256_GCM_SHA384,TLS_RSA_WITH_AES_128_CCM,TLS_RSA_WITH_AES_256_CCM,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA" truststoreFile="C:\NetIQ\IDM\apps\osp\osp.bcfks" truststorePassword="novell" truststoreType="BCFKS" > <Certificate certificateKeystoreFile="C:\NetIQ\IDM\apps\tomcat\conf\tomcat.bcfks" certificateKeystorePassword="novell" certificateKeyAlias="ssl certificatedns" certificateKeystoreType="BCFKS" /> </SSLHostConfig> </Connector>
  7. 如下所示编辑 ism-configuration.properties 文件:

    com.netiq.idm.osp.ssl-keystore.file = C:\\NetIQ\\IDM\\\\apps\\\\tomcat\\\\conf\\\\tomcat.bcfks
    com.netiq.idm.osp.ssl-keystore.type = BCFKS
    com.netiq.idm.osp.oauth-keystore.file = C:\\\\NetIQ\\\\IDM\\\\apps\\\\osp\\\\osp.bcfks
    com.netiq.idm.osp.oauth-keystore.type = BCFKS
    com.netiq.rpt.ssl-keystore.file = C:\\NetIQ\\IDM\\apps\\tomcat\\conf\\idm.bcfks
    com.netiq.rpt.ssl-keystore.type = BCFKS
    DirectoryService/realms/jndi/params/KEYSTORE_PATH = C:\\NetIQ\\IDM\\apps\\tomcat\\conf\\idm.bcfks
    com.sssw.fw.security.sigcert.truststore.type = BCFKS
    com.netiq.idm.osp.oauth-truststore.file = C:\\\\NetIQ\\\\IDM\\\\apps\\\\tomcat\\\\conf\\\\idm.bcfks
    com.netiq.idm.ua.ldap.keystore-type = BCFKS
    com.netiq.idm.osp.oauth-key-alias = ssl certificatedns
  8. 将以下 jars 复制到 C:\NetIQ\IDM\apps\configupdate\lib 文件夹:

    • bc-fips-1.0.2.5.jar

    • bcpkix-fips-1.0.7.jar

    • bctls-fips-1.0.19.jar

  9. 在 C:\NetIQ\IDM\apps\configupdate.bat.properties 中编辑以下内容:

    master_keystore_type=bcfks
    master_keystore=C:\NetIQ\IDM\apps\tomcat\conf\encrypt-keys.bcfks
  10. 编辑 configupdate.bat 中的以下内容:

    set "JAVA_OPTS= %JAVA_OPTS% -Dorg.bouncycastle.fips.approved_only=true -Dinternal.osp.framework.fips-password=novell -Dorg.bouncycastle.rsa.allow_multi_use=true -Djavax.net.ssl.keyStoreType=BCFKS -Djavax.net.ssl.trustStoreType=BCFKS -Djavax.net.ssl.trustStore=c:\netiq\idm\apps\tomcat\conf\idm.bcfks -Djavax.net.ssl.trustStorePassword=novell  "
    set CLASSPATH=C:\NetIQ\Common\JRE\lib\bc-fips-1.0.2.5.jar;C:\NetIQ\Common\JRE\lib\bcpkix-fips-1.0.7.jar;C:\NetIQ\Common\JRE\lib\bctls-fips-1.0.19.jar;%CLASSPATH%
  11. 起动 configupdate 实用程序。

  12. 启动 Tomcat。