У меня есть сервер Windows 2008 на Amazon EC2. Я установил сервер Jboss 7 на горшок 8080 (IIS работает на порту 80). Когда я выполняю http://localhost:8080
изнутри сервера в браузере он работает нормально. Но когда я получаю доступ к тому же извне http://IPaddress:8080
время запроса истекло. пожалуйста, обратите внимание http://IPaddress
работает нормально и указывает на приложение IIS.
Я поискал на этом форуме и нашел пару полезных команд
netstat -a -n
правильно отображает, что порт 8080 прослушивает
Затем я добавил 4 правила в брандмауэр Windows, 2 для входящего трафика на порт 8080 для UDP и TCP и 2 для исходящего трафика на порт 8080.
Теперь, когда я это сделаю netsh firewall show state
, он показывает порт 8080 как для UDP, так и для TCP под заголовком «порты в настоящее время открыты на всех сетевых интерфейсах».
Что мне не хватает? Как я могу получить доступ к порту 8080 из Интернета для этого сервера
Виноват! На самом деле проблема заключалась в настройке Jboss. По умолчанию Jboss не запускается в широковещательном режиме.
Jboss 7 поставляется с установочным файлом standalone.xml с тегом <interface name="public">
, по умолчанию это 127.0.0.1. Мне нужно было изменить это на <any-address>
Подробности
https://stackoverflow.com/questions/6853409/binding-jboss-as7-to-all-interfaces