Eu tenho um aplicativo Web em execução no Amazon EC2. Ele escuta na porta 9898.
Eu posso acessá-lo inserindo o endereço IP e o número da porta.
por exemplo, 1.2.3.4:9898
No entanto, o que eu realmente gostaria de fazer é não precisar digitar o número da porta.
Pesquisando isso, parece que o encaminhamento de porta pode ser a solução - ou seja, encaminhar solicitações HTTP recebidas na porta padrão (80) para minha porta não padrão (9898).
Este é o caminho correto a seguir? Em caso afirmativo, como faço para configurar isso no EC2?
Caso contrário, como faço para conseguir o que quero?
Agradecemos antecipadamente por qualquer ajuda.
Atualizar
Eu deveria ter mencionado que a instância do EC2 é uma AMI do Windows Server 2012.
Respostas:
A maneira mais fácil de fazer isso sem instalar algo é colocar um Amazon Elastic Load Balancer na frente da instância. Isso permite que você encaminhe portas como pretendido.
fonte
Você tem duas opções.
1) Configure um proxy reverso para encaminhar as solicitações HTTP (assumindo que seja HTTP) para uma porta diferente.
Deve ser tão simples quanto: Instale o apache, ative o módulo proxy_http, coloque algo como:
2) Configure as tabelas de IP para encaminhar os pacotes .
fonte
porque vi o comentário sobre o uso do iptables, vou compartilhar minha experiência no ec2 linux. Encontrei um excelente artigo sobre o encaminhamento de portas para o Node.js. Se você pular as instruções para editar o sysctl.conf, verá as instruções de encaminhamento. Meu procedimento Linux variou ligeiramente do Ubuntu. Artigo é: http://www.lauradhamilton.com/how-to-set-up-a-nodejs-web-server-on-amazon-ec2
O trabalho é feito via ssh. O único problema que encontrei foi o pré-roteamento duas vezes, sem liberar as tabelas de ip entre elas, e meu aplicativo da web não estava visível até que eu liberasse e recarregasse. Eu sei que é uma imagem terrível para concluir, desculpe.
fonte