2016-02-03 5 views
1

Я делаю запрос GET к моему примеру EC2, но я получаю следующее сообщение об ошибке:EC2 порт 80: Соединение отклонено

80: Connection refused 

Таковы правила безопасности моего экземпляра:

Ports Protocol Source   launch-wizard-1 
80   tcp  0.0.0.0/0   ✔ 
22   tcp  177.32.53.207/32  ✔ 

Что не так с этими правилами? Почему я не могу получить доступ к порту 80?

EDIT I attached my apache conf file (/etc/apache2/apache2.conf) в этом адресе, так как он слишком большой, чтобы опубликовать весь код здесь.

EDIT2 при запуске netstat -ntlp | Grep СЛУШАТЬ я получаю это:

(No info could be read for "-p": geteuid()=1000 but you should be root.) 
tcp  0  0 0.0.0.0:22    0.0.0.0:*    LISTEN  -    
tcp  0  0 127.0.0.1:3306   0.0.0.0:*    LISTEN  -    
tcp6  0  0 :::80     :::*     LISTEN  -    
tcp6  0  0 :::22     :::*     LISTEN  
+1

У вас есть программное обеспечение на экземпляре, который служит для ответа на порт 80 (например, веб-сервер)? Это работает? Вы видите что-то в своих журналах ошибок? –

+0

В дополнение к тому, что сказал Робби, убедитесь, что любое приложение, работающее на сервере, слушая порт 80, связывает правильный интерфейс/IP. Если он только слушает localhost или непубличный IP-адрес, он не будет отвечать на общедоступный IP-адрес. – Brooks

+0

@RobbieПожалуйста, да, у меня есть apache. Но я проверил журналы на var/log/apache2/error.log, и я ничего не вижу в связи с этим портом. –

ответ

0

Что является источником вашего запроса на соединение? Вы пытаетесь получить доступ к своему экземпляру извне Amazon или из экземпляра EC2 с разницей в той же зоне доступности? Вы указываете IP-адрес или DNS-имя в качестве аргумента вашего кода подключения?

Имейте в виду, что AWS EC2 использует SDN (сеть с программным обеспечением), которая не работает как классическая маршрутизация TCP/IP, которую вы можете ожидать от использования Linux или других операционных систем, на голых металлических системах (или даже на VM с использованием более традиционных сетей).

В конечном итоге вы, вероятно, захотите выделить «эластичный IP» (EIP) из AWS и привязать его к экземпляру вашего веб-сервера. Затем направьте свои запросы на этот IP-адрес. (Часто вы также создаете запись DNS, возможно, через службу «Маршрут53» Amazon, чтобы использовать имя, а не адрес).

Возможно получить ваш экземпляр изнутри и снаружи их сети. Но вы должны использовать имя DNS, созданное Amazon, чтобы сделать это, потому что они используют split-horizon, ваши клиенты получат правильный (внутренний или внешний) IP-адрес.

Также вы должны рассмотреть параметры безопасности в вашей VPC (виртуальной частной облачной сети), а также те, которые вы применили к вашему экземпляру.

Смежные вопросы