4.2. 配置本地和远程访问 AMQ 管理控制台
本节中的步骤演示了如何配置到 AMQ 管理控制台的本地和远程访问。
远程访问控制台可能采用两种形式之一:
- 在本地代理的控制台会话中,您可以使用 Connect 选项卡连接到另一个远程代理
- 在远程主机中,您可以使用本地代理的外部可访问的 IP 地址连接到本地代理的控制台
先决条件
-
您必须至少升级到 AMQ Broker 7.1.0。作为此升级的一部分,名为
jolokia-access.xml
的 access-management 配置文件添加到代理实例中。有关升级的更多信息,请参阅将 Broker 实例从 7.0.x 升级到 7.1.0。
流程
-
打开 &
lt;broker_instance_dir> /etc/bootstrap.xml
文件。 在
web
元素中,观察 Web 端口默认仅绑定到localhost
。<web path="web"> <binding uri="http://localhost:8161"> <app url="redhat-branding" war="redhat-branding.war"/> <app url="artemis-plugin" war="artemis-plugin.war"/> <app url="dispatch-hawtio-console" war="dispatch-hawtio-console.war"/> <app url="console" war="console.war"/> </binding> </web>
要从远程主机为本地代理启用连接到控制台,请将 Web 端口绑定更改为网络可访问的接口。例如:
<web path="web"> <binding uri="http://0.0.0.0:8161">
在前面的示例中,通过指定
0.0.0.0
,您可以将 Web 端口绑定到本地代理 上的所有 接口。-
保存
bootstrap.xml
文件。 -
打开 &
lt;broker_instance_dir> /etc/jolokia-access.xml
文件。 在 &
lt;cors
> (即 Cross-Origin Resource Sharing)元素中,为每个您要允许访问控制台的 HTTP 原始请求标头添加一个allow-origin
条目。例如:<cors> <allow-origin>*://localhost*</allow-origin> <allow-origin>*://192.168.0.49*</allow-origin> <allow-origin>*://192.168.0.51*</allow-origin> <!-- Check for the proper origin on the server side, too --> <strict-checking/> </cors>
在前面的配置中,您可以指定允许以下连接:
从本地主机(即本地代理实例的主机机器)连接到控制台。
-
第一个星号(
*
)通配符字符允许根据您为安全连接配置了控制台,在连接请求中指定http
或https
方案。 - 第二个星号通配符字符允许将主机计算机上的任何端口用于连接。
-
第一个星号(
-
使用本地代理的外部可访问的 IP 地址,从远程主机连接到本地代理的控制台。在这种情况下,本地代理的外部可访问的 IP 地址为
192.168.0.49
。 -
从控制台会话内打开到本地代理的连接。在这种情况下,远程代理的 IP 地址为
192.168.0.51
。
-
保存
jolokia-access.xml
文件。 -
打开 &
lt;broker_instance_dir> /etc/artemis.profile
文件。 要在控制台中启用 Connect 选项卡,请将
Dhawtio.disableProxy
参数的值设置为false
。-Dhawtio.disableProxy=false
重要建议您仅在控制台公开给安全网络时启用来自控制台的远程连接(即,将
Dhawtio.disableProxy
参数的值设置为false
)。将新参数
Dhawtio.proxyWhitelist
添加到 Java 系统参数的JAVA_ARGS
列表中。作为用逗号分开的列表,为您要从本地代理连接到的任何远程代理指定 IP 地址(即,通过在本地代理上运行的控制台会话中使用 Connect 选项卡)。例如:-Dhawtio.proxyWhitelist=192.168.0.51
根据上述配置,您可以使用本地代理的控制台会话中的 Connect 选项卡连接到另一个远程代理,IP 地址为
192.168.0.51
。-
保存
aretmis.profile
文件。
其他资源
- 要了解如何访问控制台,请参阅 第 4.3 节 “访问 AMQ 管理控制台”。
有关以下内容的更多信息:
- 交叉识别资源共享,请参阅 W3C 建议。
- Jolokia 安全,请参阅 Jolokia 协议。
- 保护到控制台的连接,请参阅 第 4.4.3 节 “保护到 AMQ 管理控制台的网络访问”。