我正在使用 JBOSS EAP 7。我使用命令启动它
sh standalone.sh -b 0.0.0.0
以下是我没有从命令行显式绑定时的 IP 配置。
<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>
除此之外,我还在standalone.xml 文件中更改了绑定IP。当我启动它时,它不会显示任何错误。我没有在我的服务器上使用 fail2ban 或任何其他类型的防火墙,而是使用端口 8050。
为了确认我的服务器是否正在侦听该端口,我运行了以下命令
sudo netstat -tlnp
输出:
tcp 0 0 0.0.0.0:8050 0.0.0.0:* LISTEN 4670/java
为了确认这是 jboss,我跑了
pgrep -f jboss
并在此示例中获得相同的 pid 即 4670。
我检查了 server.log,那里也一切正常。因此,我的结论是 JBOSS 在上述端口中运行良好,并具有适当的绑定(我给了 0.0.0.0 IP 以便能够从任何地方远程访问)。但我仍然无法从浏览器或 DHC 客户端访问它。可能出了什么问题?
执行以下测试以找出您的问题是什么以及如何解决它:
<any-address/>
而不是 IP 地址。所以你
standalone.xml
应该如下所示:上述解决方案应该可以解决您的问题。但如果不是这样,
grep 127.0.0.1
请在您的配置文件中使用以查看是否有任何您遗漏的内容要更改为0.0.0.0
- 例如grep -R 127.0.0.1 /opt/wildfly/*
.如果一切正常,但您不知道是什么导致了问题,请检查是否收到了数据包/请求,您可以使用
tcpdump
它进行检查。最后一个可能的原因可能是您的 VPS 提供商阻止了任何非全球使用的端口,因此您需要联系他们。为确保您是否应该联系您的提供商,只需执行以下测试:
结论 [根据聊天会话]
根据我们在聊天会话中所做的测试,当 Apache 设置在 80 端口上时,OP 可以访问 Apache 索引页面,但无法使用除 80 之外的任何其他端口访问它。因此我们可以得出结论,提供者正在过滤和阻止其他端口超过 80、22 等。所以 OP 应该联系 VPS 提供商并要求他们允许他需要的端口。问题的发生是由于 VPS 提供商的防火墙,而不是 OP 所做的任何配置或设置。