Назад | Перейти на главную страницу

Почему я не могу подключиться к веб-серверу Jetty в Ubuntu в экземпляре AWS EC2

Невозможно подключиться из моего веб-браузера к моему серверу Jetty, работающему на Ubuntu Linux SMP в Amazon Webservices EC2.

Я могу подключиться с помощью localhost, пока я вошел в систему с самого компьютера

т.е. curl http://localhost:8080/?type=release\&query=reid:1

работает

Поскольку это инстанс Amazon EC2, у него есть как частный, так и общедоступный IP-адрес, когда я запускаю причал, он говорит

 * Starting Jetty servlet engine, jetty8                                              
 * Jetty servlet engine started, reachable on http://ip-172-31-16-219:8080/. jetty8 

Но ip-172-31-16-219 относится к моему частному адресу, а не к моему общедоступному адресу, однако с самого компьютера, использующего dns для частного ip-адреса, все еще не удается

curl http://ip-172-31-16-219.eu-west-1.compute.internal:8080/?type=release\&query=reid:1

Я читал, что проблема может заключаться в брандмауэре iptables, но iptables не является известной командой в этом экземпляре (возможно, не используется ubuntu)

В целях тестирования я настроил группу безопасности Amazon, которую она использует, чтобы разрешить полный входящий и исходящий трафик.

Что еще мне нужно сделать?

Похоже, что вывод основан на вашем имени хоста, поэтому проверьте, что находится в / etc / hostname, и, если это неверно, измените его на что-то более подходящее.

Однако имя хоста на самом деле не понадобится для подключения, вы просто должны иметь возможность подключиться к общедоступному IP-адресу, который вы предоставили экземпляру на указанном порту (8080 в данном случае).

Также убедитесь, что правила брандмауэра в консоли Amazon EC2 верны и разрешают доступ 8080 из внешнего мира.

Я подозреваю, что вы хотите использовать «общедоступный IP» и / или «общедоступный DNS» своего сервера, а не «частный IP» или «частный DNS». Вы можете увидеть все это на вкладке «Описание» экземпляра на панели инструментов EC2.

Частный DNS compute.internal доменное имя будет иметь смысл только в том случае, если вы используете DNS, предоставленный Amazon. Однако я не знаю причин, по которым вам это особенно нужно.

Больше информации: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-instance-addressing.html