3

У меня есть приложение node.js, работающее отлично на Beanstalk, но теперь я пытаюсь настроить его для использования SSL-сертификата, чтобы разрешить доступ к https. Однако любые настройки конфигурации, которые я пытаюсь использовать отдельно от прослушивания по умолчанию на порту 80, заставляют все приложение (на http и https) становиться недоступными.Прослушивание SSL с помощью node.js на AWS Beanstalk

Если я продолжаю работать с тем же приложением (прослушивание process.env.PORT), но измените настройки балансировки нагрузки, чтобы прослушивать порт 443, а также порт 80, тогда ни один из них не доступен.

Я также попытался изменить приложение таким образом, что он использует узел HTTPS пакет сервера вместо HTTP, но это не имеет никакого значения. Указать балансировку нагрузки только для прослушивания на порту 443 тоже не работает.

Из чего я могу собрать, установив его, чтобы порты 80 и 443 переводили балансировщик нагрузки на тот же порт 8080 (который указан process.env.PORT в приложении) - это правильно? Если да, то что мне нужно изменить на стороне приложения, чтобы заставить его работать, когда он уже должен прослушивать правильный порт?

ответ

6

мне удалось исправить это, следуя совету более на форумах AWS: https://forums.aws.amazon.com/thread.jspa?messageID=463043

мне нужно изменить группу безопасности, балансировки нагрузки использует (тот, который автоматически создается и имеет описание ELB created security group used when no security group is specified during ELB creation - modifications could impact traffic to future ELBs).

Балансировщик нагрузки должен уже разрешать HTTP-трафик на порту 80 от источника 0.0.0.0/0, и вам необходимо добавить трафик HTTPS на порт 443, также с 0.0.0.0/0, чтобы разрешить HTTPS-трафик. Это можно сделать в разделе групп безопасности раздела консоли управления EC2.

Затем послушайте порт 8080 в вашем приложении Node.js, и ваш контент можно получить через HTTP и HTTPS.

+1

Можете ли вы уточнить, что ваше приложение Nodejs имеет только 1 сервер HTTP, который прослушивает 8080 вместо 2 серверов (http на 8080 и https на 443)? Thx – lastoneisbearfood

+2

@lastoneisbearfood да, один HTTP-сервер, прослушивающий 8080 в узле, затем балансировка нагрузки и т. Д. Обрабатывает https –

+0

. Я не знал, что вы должны были слушать @ 8080, а ElasticBeanstalk будет делать 443-> 8080/80-> 8080 отображение. Я пытаюсь это прямо сейчас. фактически, process.env.PORT || 8080 – kroe

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

  • Нет связанных вопросов^_^