Я только что арендовал сервер Amazon EC2, предназначенный для размещения приложения node.js, которое слушает клиента через порт 9001.
Я настроил группы безопасности и добавил входящие и исходящие правила для этого порта. Там нет брандмауэра (Amazon Linux), и я полностью отключил iptables.
sudo netstat -plunta | grep LISTEN возвращает это:
tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      2064/sshd           
tcp        0      0 127.0.0.1:25                0.0.0.0:*                   LISTEN      2104/sendmail       
tcp        0      0 0.0.0.0:9001                0.0.0.0:*                   LISTEN      3207/node           
tcp        0      0 127.0.0.1:27017             0.0.0.0:*                   LISTEN      2146/mongod         
tcp        0      0 :::80                       :::*                        LISTEN      2303/httpd          
tcp        0      0 :::22                       :::*                        LISTEN      2064/sshd       
Мое приложение node.js прослушивает этот порт и все адреса с помощью команды server.listen(9001, "0.0.0.0");
Тем не менее, nmap сервера возвращает это:
Portscan scan report for 172.31.47.81
Host is up.
All 1000 scanned ports on 172.31.47.81 are filtered
Portscan done: 1 IP address (1 host up) scanned in 2.32 seconds
Кроме того, выполнение Nmap на моем телефоне говорит мне, что открыт только порт 80.
Если я запускаю приложение node.js на сервере и выполняю telnet <ip_server> 9001 , оно работает. Однако, если я делаю то же самое со своего персонального компьютера, я получаю ошибку тайм-аута.
Я знаю, что этот вопрос неоднократно задавался, но ни одно из решений, которые я пробовал, не сработало. Я могу пропинговать сервер, использовать ssh для подключения к нему, но приложение node.js не будет работать, а любой из портов, которые должны быть открыты, на самом деле нет (даже попытка подключиться через браузер к веб-серверу не не работает, несмотря на то, что httpd настроен с правильным веб-сайтом, поэтому порт 80 также не открыт).
Есть идеи как это исправить?
