SSL 配置在 Wildfly 26.0.1 中不起作用

标签 ssl configuration jboss wildfly

我们正在尝试将 Wildfly 从 8.1.0.Final 迁移到 26.0.1.Final。目前 Wildfly 以独立模式运行,因此 standalone.xml 用于配置,目前还没有域配置。

一切正常,包括管理控制台、程序包部署等,但使用 https 请求 URL 给我们“无法访问此站点”。 Wildfly 26.0.1.Final 中的 SSL 配置似乎有问题,因为在版本 8.1.0.Final 中使用了相同的 SSL 证书。

这是我们使用的 SSL/TLS 配置:

            <tls>
                <key-stores>
                    <key-store name="abc-keystore">
                        <credential-reference clear-text="clearpasswordonetwothree"/>
                        <implementation type="JKS"/>
                        <file path="abc-keystore.jks" relative-to="jboss.server.config.dir"/>
                    </key-store>
                </key-stores>
                <key-managers>
                    <key-manager name="applicationKM" key-store="abc-keystore">
                        <credential-reference clear-text="clearpasswordonetwothree"/>
                    </key-manager>
                </key-managers>
                <server-ssl-contexts>
                    <server-ssl-context name="applicationSSC" key-manager="applicationKM"/>
                </server-ssl-contexts>
            </tls>

我们已经从配置中删除了 generate-self-signed-certificate-host="localhsot" 因为证书在我们的案例中不是自签名的。 正如我之前提到的,相同的 SSL 证书已在 8.1.0 版中使用。

请注意,这与版本 26.0.1.Final 特别相关,我不知道除了上述之外是否还需要任何其他配置。

非常感谢任何帮助。

最佳答案

这就是我在 Wildfly 支持的帮助下整理出来的方法。在我的例子中,它是独立模式。

TLS block :

<tls>
                <key-stores>
                    <key-store name="applicationKS">
                        <credential-reference clear-text="password"/>
                        <implementation type="JKS"/>
                        <file path="C:\wildfly26\application.keystore.jks"/>
                    </key-store>
                </key-stores>
                <key-managers>
                    <key-manager name="applicationKM" key-store="applicationKS" generate-self-signed-certificate-host="localhost">
                        <credential-reference clear-text="password"/>
                    </key-manager>
                </key-managers>
                <server-ssl-contexts>
                    <server-ssl-context name="applicationSSC" protocols="TLSv1.2" key-manager="applicationKM"/>
                </server-ssl-contexts>
            </tls>

在 https-listener 中引用 SSL 上下文

<https-listener name="https" socket-binding="https" ssl-context="applicationSSC" enable-http2="true"/>

socket-binding-group 下的套接字绑定(bind) 将端口从 8443 更改为 443

<socket-binding name="https" port="${jboss.https.port:443}"/>

配置界面

<interfaces>
        <interface name="management">
            <inet-address value="${jboss.bind.address.management:127.0.0.1}"/>
        </interface>
        <interface name="public">
            <inet-address value="${jboss.bind.address:0.0.0.0}"/>
        </interface>
    </interfaces>

关于SSL 配置在 Wildfly 26.0.1 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70922942/

相关文章:

java - 使用 persistence.xml 创建 Hibernate SessionFactory

Perl Apache : Perl script displayed as plain text

Laravel - 根据环境进行设置

java - 从 Web 应用程序调用 Java native 接口(interface)

java - 从 Eclipse Luna 卸载 JBoss Tools 4.3.0 Final (Hibernate)

apache - Collabora (docker) 和 NextCloud (snap) 问题在同一台机器上的代理后面

iis - 我的注册商为我的 SSL 请求提供了 .crt 和 .pem 文件 - 无法导出到 PFX,那么我如何在 Azure 中使用它?

docker - Docker 和 Letsencrypt 证书再次出现 Keycloak 错误

java - 在 Jboss AS 7.1.1 中安装 CA 证书

BBB 上的 Ruby 2.00 编译错误