ES не прослушивает внешние запросы

У меня есть экземпляр e2 ubuntu, работающий с elasticsearch, и хотя он работает нормально локально, я не могу подключиться к Windows-компьютеру с помощью curl http://ipaddress:9200/ (ошибка «не может подключиться к удаленному серверу»).

Я установил Apache на том же экземпляре ubuntu и curl http://ipaddress:80/ работает с той же машины Windows, и я могу без проблем запустить ping. Моя группа безопасности amazon позволяет tcp получить доступ ко всем портам со всех IP-адресов.

Я думаю, что это проблема с конфигурацией ES, хотя единственные строки, которые я добавил в elasticsearch.yml:

 http.cors.enabled: true http.cors.allow-origin: "*" 

Я заметил что-то странное, когда я запускаю netstat, есть 1 в локальном адресе для портов 9200 и 9300 (ES-порты) – это заблокирует мой внешний запрос, и если да, то как это изменить?

  ubuntu@ESServer$ netstat -nat Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN tcp 0 448 (AWS PRIVATE IP):22 (MY IP):63572 ESTABLISHED tcp6 0 0 :::22 :::* LISTEN tcp6 0 0 ::1:9200 :::* LISTEN tcp6 0 0 127.0.0.1:9200 :::* LISTEN tcp6 0 0 :::80 :::* LISTEN tcp6 0 0 ::1:9300 :::* LISTEN tcp6 0 0 127.0.0.1:9300 :::* LISTEN 

Кажется, что ваш процесс elasticsearch связывается с localhost. Попробуйте запустить его следующим образом:

 bin/elasticsearch --network.host _non_loopback_ 

Так как 2.0 elasticsearch связывается с localhost. По этой причине вы не можете получить к нему доступ.

Причины этого изменения объясняются в этом сообщении блога