Я использую 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>
Кроме того, я также изменил IP привязки в файле standalone.xml. Когда я запускаю его, он не показывает никаких ошибок. Я не использую 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 работает нормально на указанном порту с правильной привязкой (я дал IP 0.0.0.0, чтобы иметь возможность удаленного доступа из любого места). Но все же я не могу получить к нему доступ из браузера или клиента DHC. Что могло пойти не так?
Выполните следующие тесты, чтобы выяснить, в чем заключается ваша проблема и как ее решить:
<any-address/>
вместо IP-адреса.Так что ваши standalone.xml
должно выглядеть так:
<interfaces>
<interface name="management">
<inet-address value="127.0.0.1"/>
</interface>
<interface name="public">
<any-address/>
</interface>
</interfaces>
Приведенное выше решение, вероятно, должно решить вашу проблему. Но если это не так, используйте grep 127.0.0.1
в ваших файлах конфигурации, чтобы увидеть, есть ли что-то, что вы пропустили, чтобы изменить на 0.0.0.0
- например, grep -R 127.0.0.1 /opt/wildfly/*
.
Если все в порядке, но вы не знаете, что вызывает проблему, проверьте, получены ли пакеты / запросы, вы можете использовать tcpdump
чтобы проверить это.
Последняя возможная причина может заключаться в том, что ваш VPS-провайдер блокирует любые не широко используемые порты, поэтому вам потребуется связаться с ними. Чтобы убедиться, что вам следует обратиться к своему провайдеру, просто выполните следующий тест:
По тесту мы сделали в чате, OP может получить доступ к странице индекса Apache, пока Apache настроен на порт 80, но не может получить доступ к нему через любой другой порт, кроме 80. Таким образом, мы можем сделать вывод, что провайдер фильтрует и блокирует порты, отличные от 80, 22 и т. д. OP должен связаться с провайдером VPS и попросить его разрешить порты, в которых он нуждается. И возникновение проблемы было связано с брандмауэром поставщика VPS, а не с какой-либо конфигурацией или настройкой, которую OP мог бы сделать.