Перенаправить порт через iptables на экземпляр AWS EC2 Ubuntu - PullRequest
0 голосов
/ 16 ноября 2018

У меня работает экземпляр AWS EC2 на компьютере с Ubuntu, на котором работает сервер Nodejs.Все работает нормально, тогда открытие сайта через публичный ip на порт 3000 выглядит следующим образом:

http://XX.XXX.XXX.XXX:3000

Теперь я хочу перенаправить все запросы с порта 80 на этот порт 3000 через iptables, как описанов этом видео: https://www.youtube.com/watch?v=WxhFq64FQzA через

sudo iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3000.

К сожалению, я получаю эту ошибку: http://prntscr.com/lja6hx при открытии сайта следующим образом: http://XX.XXX.XXX.XXX(без указания порта 3000)

PS: Я не совсем уверен, что мой подход правильный.Я открыт для других способов достижения перенаправления с порта 80 (http) на порт 3000


. Как предложил @Vorsprung, я должен использовать Application Load Balancer.Я сделал это, но это все еще не работает.Вот мои настройки:

Прослушиватель балансировки нагрузки моего приложения Application Load Balancer Listener

Целевая группа, которую я перенаправляю в мой ALB Target Group Description Target Group Targets

Моя размещенная зона (здесь я добавил псевдоним для ALB) Hosted zone A record

Пожалуйста, дайте мне знатьесли чего-то не хватает

1 Ответ

0 голосов
/ 16 ноября 2018
  1. либо используйте nginx, см. https://nodebb.readthedocs.io/en/latest/configuring/proxies/nginx.html или
  2. Вы находитесь на AWS!Используйте ALB .. см. https://docs.aws.amazon.com/elasticloadbalancing/latest/application/application-load-balancer-tutorials.html
...