上一主题: 在 Windows 上安装 CA ControlMinder 企业管理下一主题: 使用 AES 加密方法加密密码


JBoss 的 SSL 通讯

默认情况下,安装的 JBoss 不带 SSL 支持。 这表示 CA ControlMinder 企业管理 和 JBoss 之间的所有通讯都未加密。 您可以配置 JBoss,以使用 SSL 进行安全通讯。

注意:有关如何为 JBoss 配置 SSL 的详细信息,请参阅 JBoss 产品文档。

示例:在 Windows 上为 SSL 通讯配置 JBoss

该示例介绍了如何配置 JBoss 应用程序服务器,以便使用 SSL 进行安全通讯。

重要说明! 该过程描述如何使用 JBoss 版本 4.2.3 和 JDK 版本 1.5.0 配置 JBoss,以使用 SSL 进行安全通讯。

遵循这些步骤:

  1. 如果 JBoss 正在运行,请将其停止。
  2. 打开命令提示符窗口,并导航到以下目录:
    JBoss_HOME\server\default\deploy\IdentityMinder.ear\custom\ppm\truststore
    
  3. 输入以下命令更改默认 ssl、keystore 密码:
    keytool -storepasswd -new password -keystore ssl.keystore -storepass secret
    
    -storepasswd

    指定更改 keystore 密码。 密码必须至少为六个字符长。

    -keystore

    指定要添加证书的 keystore 名称。

    -keystore

    指定 keystore 名称。

    -storepass

    定义保护 keystore 所用的密码。

  4. 输入以下命令,以便创建企业管理服务器的密钥:
    keytool -genkey -alias entm -keystore ssl.keystore -keyalg RSA
    
    -genkey

    指定命令应生成密钥对(公钥和私钥)。

    -alias

    定义用来将条目添加到 keystore 的别名。

    -keyalg

    指定要用来生成密钥对的算法。

    将启动 keytool 实用程序。

  5. 输入密码 secret
  6. 按需要完成提示,并按 Enter 验证已输入的参数。

    证书即可添加到密钥存储。

    注意:keystore 和 ket 别名必须使用相同密码。

  7. 输入以下命令,以便将 keystore 密码加密到文件:
    java -cp JBoss_HOME/server/default/lib/jbossx.jar org.jboss.security.plugins.FilePassword welcometojboss 13 passowrd <kestore_password> keystore.password
    

    注意:盐和 IterationCount 是定义加密密码强度的变量。 在此示例中,“welcometojboss”是盐,“13”是重复计数。

  8. 在以下目录中找到名为 server.xml 的文件,并打开该文件进行编辑:
    JBossInstallDir\server\default\deploy\jboss-web.deployer
    
  9. 在以下部分找到 <Connector Port> 标记:
    <!-- 定义端口 8443 上的 SSL HTTP/1.1 连接器
             使用 APR 时,该连接器使用 JSSE 配置, 
             连接器应使用 APR 文档中所描述的
             OpenSSL 样式配置 -->
        <!--
        <Connector port="18443" protocol="HTTP/1.1" SSLEnabled="true"
                   maxThreads="150" scheme="https" secure="true"
                   clientAuth="false" sslProtocol="TLS" />
    

    注意:连接器端口号对应于在先决条件或 CA ControlMinder 企业管理 安装过程中指定的 JBoss HTTPS 端口号。

  10. 注释掉 <Connector port> 标记上方的 "<!--"。

    现在可以编辑该标记。

  11. 将以下属性添加到 <Connector port> 标记:
    securityDomain="java:/jaas/encrypt-keystore-password" SSLImplementation="org.jboss.net.ssl.JBossImplementation"
    
  12. 保存并关闭 server.xml 文件。
  13. 导航到以下目录找到 jboss-service.xml 文件:
    JBOss_HOME/server/default/deploy/jboss-web.deployer/META-INF
    
  14. 在 <server> 和 </server> 标记之间添加以下 mbean:
    <mbean code="org.jboss.security.plugins.JaasSecurityDomain" name="jboss.security:service=PBESecurityDomain">                        
          <constructor>                                                           
             <arg type="java.lang.String" value="encrypt-keystore-password"></arg>
          </constructor>                                                          
          <attribute name="KeyStoreURL">${jboss.server.home.dir}/deploy/IdentityMinder.ear/custom/ppm/truststore/ssl.keystore</attribute>                                                          
          <attribute name="KeyStorePass">{CLASS}org.jboss.security.plugins.FilePassword:${jboss.server.home.dir}/deploy/IdentityMinder.ear/custom/ppm/truststore/keystore.password</attribute>
    <attribute name="Salt">welcometojboss</attribute>
    <attribute name="IterationCount">13</attribute>
     </mbean>
    

    注意:在以上示例中,“welcometojboss”是盐,“13”是重复计数。

  15. 保存并且关闭 jboss-service.xml
  16. 启动并打开 CA ControlMinder 企业管理。

    注意:完成该过程后,可以选择以 SSL 或非 SSL 模式连接到 JBoss 和 CA ControlMinder 企业管理。