1.2.10. 使用传统核心管理身份验证为管理接口设置双向 SSL/TLS


双向 SSL/TLS 身份验证(也称为客户端身份验证 )使用 SSL/TLS 证书验证客户端和服务器。这与为单向 SSL/TLS 部分的 Configure the Management Interfaces 的不同之处在于,客户端和服务器都有证书。这不仅保证了它所表示的服务器,而且客户端也知道它的位置。

在本节中,使用以下惯例:

HOST1
JBoss 服务器主机名.例如: jboss.redhat.com
HOST2
客户端的合适名称。例如: myclient。请注意,这不一定是实际主机名。
CA_HOST1
用于 HOST1 证书的 DN(区分名称)。例如: cn=jboss,dc=redhat,dc=com
CA_HOST2
用于 HOST2 证书的 DN(区分名称)。例如: cn=myclient,dc=redhat,dc=com
先决条件
注意

如果使用密码库来存储密钥存储和信任存储密码(建议使用密码库),则应已创建密码库。有关密码库的更多信息,请参阅红帽 JBoss 企业应用平台 7 安全架构指南中 的密码 Vault 部分和密码 Vault 系统部分

警告

红帽建议显式禁用 SSLv2、SSLv3 和 TLSv1.0,以便在所有受影响的软件包中明确禁用 TLSv1.1 或 TLSv1.2。

  1. 生成密钥存储。

    $ keytool -genkeypair -alias HOST1_alias -keyalg RSA -keysize 1024 -validity 365 -keystore HOST1.keystore.jks -dname "CA_HOST1" -keypass secret -storepass secret
    
    $ keytool -genkeypair -alias HOST2_alias -keyalg RSA -keysize 1024 -validity 365 -keystore HOST2.keystore.jks -dname "CA_HOST2" -keypass secret -storepass secret
  2. 导出证书。

    $ keytool -exportcert  -keystore HOST1.keystore.jks -alias HOST1_alias -keypass secret -storepass secret -file HOST1.cer
    
    $ keytool -exportcert  -keystore HOST2.keystore.jks -alias HOST2_alias -keypass secret -storepass secret -file HOST2.cer
  3. 将证书导入到相反的信任存储中。

    $ keytool -importcert -keystore HOST1.truststore.jks -storepass secret -alias HOST2_alias -trustcacerts -file HOST2.cer
    
    $ keytool -importcert -keystore HOST2.truststore.jks -storepass secret -alias HOST1_alias -trustcacerts -file HOST1.cer
  4. 定义证书副本.

    在服务器(host.xml 或 standalone.xml )的配置中定义 CertificateRealm,并将接口指向该服务器。这可以使用以下命令完成:

    /core-service=management/security-realm=CertificateRealm:add()
    
    /core-service=management/security-realm=CertificateRealm/server-identity=ssl:add(keystore-path=/path/to/HOST1.keystore.jks, keystore-password=secret,alias=HOST1_alias)
    
    /core-service=management/security-realm=CertificateRealm/authentication=truststore:add(keystore-path=/path/to/HOST1.truststore.jks,keystore-password=secret)
  5. http -interface 的 security- realm 更改为新 CertificateRealm。

    /core-service=management/management-interface=http-interface:write-attribute(name=security-realm,value=CertificateRealm)
  6. 为 CLI 添加 SSL/TLS 配置。

    重要

    为 CLI 添加 SSL/TLS 配置,它将 EAP_HOME/bin/jboss-cli.xml 用作设置文件。

    要以纯文本形式存储密钥存储和信任存储密码,请编辑 EAP_HOME/bin/jboss-cli.xml,并使用变量的适当值添加 SSL/TLS 配置:

    示例:jboss-cli.xml Storing Keystore 和 Truststore Passwords in Plain Text

    <ssl>
      <alias>HOST2_alias</alias>
      <key-store>/path/to/HOST2.keystore.jks</key-store>
      <key-store-password>secret</key-store-password>
      <trust-store>/path/to/HOST2.truststore.jks</trust-store>
      <trust-store-password>secret</trust-store-password>
      <modify-trust-store>true</modify-trust-store>
    </ssl>

    要使用密码库中存储的密钥存储和信任存储密码,您需要将 vault 配置和适当的 vault 值添加到 EAP_HOME/bin/jboss-cli.xml

    示例:jboss-cli.xml Storing Keystore 和 Truststore 密码(Password Vault)

    <ssl>
      <vault>
        <vault-option name="KEYSTORE_URL" value="path-to/vault/vault.keystore"/>
        <vault-option name="KEYSTORE_PASSWORD" value="MASK-5WNXs8oEbrs"/>
        <vault-option name="KEYSTORE_ALIAS" value="vault"/>
        <vault-option name="SALT" value="12345678"/>
        <vault-option name="ITERATION_COUNT" value="50"/>
        <vault-option name="ENC_FILE_DIR" value="EAP_HOME/vault/"/>
      </vault>
      <alias>HOST2_alias</alias>
      <key-store>/path/to/HOST2.keystore.jks</key-store>
      <key-store-password>VAULT::VB::cli_pass::1</key-store-password>
      <key-password>VAULT::VB::cli_pass::1</key-password>
      <trust-store>/path/to/HOST2.truststore.jks</trust-store>
      <trust-store-password>VAULT::VB::cli_pass::1</trust-store-password>
      <modify-trust-store>true</modify-trust-store>
    </ssl>

重要

如果您 同时 定义了 security-realmssl-context,JBoss EAP 将使用由 ssl-context 提供的 SSL/TLS 配置。

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2026 Red Hat
返回顶部