第 7 章 网络设置

Red Hat Single Sign-On 可以开箱即用,但有一些网络限制。对于一个,所有网络端点都绑定到 localhost,因此 auth 服务器实际上仅在一台本地计算机上可用。对于基于 HTTP 的连接,不使用默认端口,如 80 和 443。HTTPS/SSL 没有配置开箱即用,如果没有它,Red Hat Single Sign-On 有很多安全漏洞。最后,Red Hat Single Sign-On 可能需要向外部服务器进行安全 SSL 和 HTTPS 连接,因此需要设置信任存储,以便正确验证端点。本章讨论了所有这些内容。

7.1. 绑定地址

默认情况下,Red Hat Single Sign-On 绑定到 localhost 回送地址 127.0.0.1。如果您想在网络上可用的身份验证服务器,则这不是非常有用的默认值。通常,我们建议您在公共网络上部署反向代理或负载均衡器,并将流量路由到私有网络上的单个 Red Hat Single Sign-On 服务器实例。在这两种情况下,您仍然需要设置网络接口,以绑定到 localhost 以外的其他接口。

设置绑定地址非常简单,可以在命令行中使用 standalone.shdomain.sh boot 脚本(在 Choosing an Operating Mode 章节中讨论) 在命令行中完成。

$ standalone.sh -b 192.168.0.5

-b 交换机为任何公共接口设置 IP 绑定地址。

或者,如果您不希望在命令行中设置绑定地址,您可以编辑部署的配置集配置。打开 profile 配置文件(standalone.xmldomain.xml,具体取决于您的 操作模式),并查找 接口 XML 块。

    <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:127.0.0.1}"/>
        </interface>
    </interfaces>

公共接口 对应于创建公开可用的套接字的子系统。其中其中一个子系统的示例是提供 Red Hat Single Sign-On 身份验证端点的 Web 层。管理接口 对应于 JBoss EAP 管理层打开的套接字。特别是允许您使用 jboss-cli.sh 命令行界面和 JBoss EAP Web 控制台的套接字。

在查看 公共接口 中,您会看到它具有特殊字符串 ${jboss.bind.address:127.0.0.1}。此字符串表示值 127.0.0.1,可通过设置 Java 系统属性(例如:

$ domain.sh -Djboss.bind.address=192.168.0.5

-b 只是此命令的一个简写表示法。因此,您可以直接在配置集配置中更改 bind address 值,或者在引导时在命令行中更改它。

注意

设置 接口 定义时,还有更多可用选项。有关更多信息,请参阅 JBoss EAP 配置指南中的 网络接口