Я могу соединиться со своим EC2 со шпаклевкой окна (порт TCP 22), но не другие порты (например, порт TCP 80 или TCP 3000).
Используя netstat
Я вижу, что получаю SYN_SENT на портах кроме 22:
netstat -na |find "35.181.14.57"
TCP 192.168.53.151:58660 35.181.14.57:22 ESTABLISHED
TCP 192.168.53.151:58694 35.181.14.57:22 ESTABLISHED
TCP 192.168.53.151:62362 35.181.14.57:80 SYN_SENT
TCP 192.168.53.151:62363 35.181.14.57:80 SYN_SENT
Группа безопасности EC2 содержит 80 и 3 000 портов тем же путем, порт 22 открыт. Кроме того, я попробовал к абсолютно открытому входящие порты:
Выполнение curl
локально доказывает, что сервер слушает на том порте:
curl http://127.0.0.1:80
Hello World
Я также проверил, что локальный брандмауэр человечности отключен:
sudo ufw disable
Firewall stopped and disabled on system startup
Получение сумасшедшего здесь, что я пропускаю??
Проблема решена! По-видимому, это было плохое Привет Мировой пример, который я загрузил. Это был node.js сервер, выполняющий следующий код:
var http = require('http');
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Hello World\n');
}).listen(3000, "127.0.0.1");
console.log('Server running at http://127.0.0.1:3000/');
И при определении IP, сервер слушает запросы, которые предназначены к тому IP. Удаление IP - решило проблему.
}).listen(3000);