我正在使用JBOSS EAP 7.我使用该命令启动它
sh standalone.sh -b 0.0.0.0
以下是我的IPconfiguration,当不从命令行显式绑定。
<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或任何其他types的防火墙,我正在使用端口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客户端访问它。 可能出了什么问题?
做下面的testing来找出你的问题是什么以及如何解决它:
<any-address/>而不是IP地址。 所以你的standalone.xml应该如下所示:
<interfaces> <interface name="management"> <inet-address value="127.0.0.1"/> </interface> <interface name="public"> <any-address/> </interface> </interfaces>
上面的解决scheme应该可能解决您的问题。 但是如果不这样,在你的configuration文件中使用grep 127.0.0.1来查看是否有任何你已经错过的改变为0.0.0.0 ,例如grep -R 127.0.0.1 /opt/wildfly/* 。
如果一切正常,但你不知道是什么原因造成的问题,请检查是否收到数据包/请求,你可以使用tcpdump来检查它。
最后一个可能的原因可能是您的VPS提供商阻止任何非世界各地使用的端口,所以您将需要联系他们。 为确保您是否应该联系您的提供商,请执行以下testing:
根据我们在聊天会话中所做的testing,OP可以访问Apache索引页面,而Apache被设置在80端口上,但是除80以外的其他任何端口都无法访问。所以我们可以得出结论,提供者正在过滤和阻塞其他端口因此,OP应联系VPS提供商,并要求他们允许他需要的端口。 而这个问题的发生是由于VPS提供商的防火墙,而不是OP将会做出的任何configuration或设置。