Невозможно получить удаленный доступ к jboss, несмотря на правильную привязку IP-адреса в файле standalone.xml

Я использую 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. Что могло пойти не так?

1
задан 2 February 2017 в 12:09
1 ответ

Выполните следующие тесты, чтобы выяснить, в чем заключается ваша проблема и как ее решить:

  • Для общедоступного интерфейса вы должны использовать IP-адрес вашего сервера. Я рекомендую вам использовать тег вместо 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/****************************************************************************************************************** 1166473] tcpdump , чтобы проверить это.

Последняя возможная причина может заключаться в том, что ваш VPS-провайдер блокирует любые не широко используемые порты, поэтому вам нужно будет связаться с ними. Чтобы убедиться, что вам следует обратиться к своему провайдеру, просто выполните следующий тест:

  • Поскольку вы упомянули в комментариях, что можете получить доступ к странице индекса Apache, остановите службу JBoss, измените порт apache с 80 на 8050, перезапустите веб-сервер и проверьте, видите ли вы свою страницу индекса Apache на 8050 или нет. - и поскольку вы упомянули в комментариях, что не можете получить доступ к своей индексной странице, пока apache не использует порт 80 по умолчанию, мы можем сделать следующий вывод: ↴

Заключение [Согласно сеансу чата]

Согласно тесту мы сделали в сеансе чата , OP может получить доступ к странице индекса Apache, пока Apache настроен на порт 80, но не может получить к нему доступ через любой другой порт, кроме 80. Таким образом, мы можем сделать вывод, что провайдер фильтрует и блокирует порты, отличные от 80, 22 и т. д. Поэтому OP должен связаться с провайдером VPS и попросить их разрешить порты, которые ему нужны. И возникновение проблемы было из-за брандмауэра провайдера VPS, а не из-за какой-либо конфигурации или настройки, которые OP мог бы сделать.

2
ответ дан 3 December 2019 в 20:28

Теги

Похожие вопросы