Сбой внешних http-соединений (порты открыты)

На размещенной Ubuntu VM у меня работает nginx для http а также httpsи может получить доступ к тем, кто использует публичный IP изнутри виртуальной машины:

curl http://159.203.0.5

Делать то же самое за пределами виртуальной машины не удается - время соединения истекло.

Порты открыты:

root@production01:~# ufw status
Status: active

To                         Action      From
--                         ------      ----
22                         ALLOW       Anywhere
80                         ALLOW       Anywhere
443                        ALLOW       Anywhere
22 (v6)                    ALLOW       Anywhere (v6)
80 (v6)                    ALLOW       Anywhere (v6)
443 (v6)                   ALLOW       Anywhere (v6)

И nginx прослушивает внешний интерфейс:

root@production01:~# netstat -an | grep "LISTEN "
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:2003            0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:2004            0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:25              0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:443             0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:2812            0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:8002            0.0.0.0:*               LISTEN     
tcp        0      0 127.0.0.1:6379          0.0.0.0:*               LISTEN     
tcp6       0      0 :::22                   :::*                    LISTEN     
tcp6       0      0 :::25                   :::*                    LISTEN

Что еще это может быть?

1 ответ

Я думаю, что проблема не на виртуальной машине, а на машине, с которой вы пытаетесь подключиться к виртуальной машине. Работают ли другие соединения на этой машине правильно?

Взгляните на это:

foo@bar:~$ curl 159.203.0.5 -v
* Rebuilt URL to: 159.203.0.5/
* Hostname was NOT found in DNS cache
*   Trying 159.203.0.5...
* Connected to 159.203.0.5 (159.203.0.5) port 80 (#0)
> GET / HTTP/1.1
> User-Agent: curl/7.35.0
> Host: 159.203.0.5
> Accept: */*
>
< HTTP/1.1 404 Not Found
< X-Powered-By: Express
< X-Content-Type-Options: nosniff
< Content-Type: text/html; charset=utf-8
< Content-Length: 13
< Date: Tue, 02 Feb 2016 17:36:31 GMT
< Connection: keep-alive
<
Cannot GET /
* Connection #0 to host 159.203.0.5 left intact

Я не получаю тайм-аут, и этот 404 выглядит нормально для меня.

Другие вопросы по тегам