Como habilitamos HTTPS no Amazon EC2? Nosso site está trabalhando em HTTP.
Como habilitamos HTTPS no Amazon EC2? Nosso site está trabalhando em HTTP.
Respostas:
Primeiro, você precisa abrir a porta HTTPS (443). Para fazer isso, acesse https://console.aws.amazon.com/ec2/ e clique no Security Groups
link à esquerda, a seguir crie um novo grupo de segurança com HTTPS também disponível. Em seguida, basta atualizar o grupo de segurança de uma instância em execução ou criar uma nova instância usando esse grupo.
Após essas etapas, seu trabalho EC2 está concluído e é tudo um problema de aplicativo.
you can't change a security group of a running instance, even rebooting
- Acho que essa limitação foi removida desde que esta resposta foi postada.
Edit inbound rules
Esta resposta é voltada para alguém que compra um domínio em outro site (como GoDaddy) e deseja usar o certificado gratuito da Amazon com o Certificate Manager
Esta resposta usa o Amazon Classic Load Balancer (pago), consulte os preços antes de usá-lo
Etapa 1 - Solicitar um certificado com o Gerenciador de Certificados
Vá para Gerenciador de certificados> Solicitar certificado> Solicitar um certificado público
Em Nome de domínio, você adicionará myprojectdomainname.com
e seguirá *.myprojectdomainname.com
em Avançar
Escolha a validação de e-mail e confirme e solicite
Abra o e-mail que você recebeu (na conta de e-mail que você comprou o domínio) e aprove o pedido
Depois disso, verifique se o status de validação de myprojectdomainname.com
e se *.myprojectdomainname.com
é bem-sucedido, se for bem-sucedido, você pode continuar para a Etapa 2
Etapa 2 - Criar um grupo de segurança para um balanceador de carga
No EC2, vá para Grupos de Segurança> e Criar um Grupo de Segurança e adicione a entrada http e https
Etapa 3 - Criar o balanceador de carga
EC2> Balanceador de carga> Criar balanceador de carga> Balanceador de carga clássico (terceira opção)
Crie LB dentro - o vpc do seu projeto On Load Balancer Protocol adiciona Http e Https
Próximo> Selecione o grupo de segurança de saída
Escolha o grupo de segurança que você criou na etapa anterior
Próximo> Escolha o certificado do ACM
Selecione o certificado da etapa 1
Próximo>
na verificação de saúde, usei o caminho do ping / (uma barra em vez de /index.html)
Etapa 4 - associe sua instância ao grupo de segurança do balanceador de carga
EC2> Instâncias> clique em seu projeto> Ações> Rede> Alterar grupos de segurança
Adicione o grupo de segurança de seu balanceador de carga
Etapa 5
EC2> Balanceador de carga> Clique no balanceador de carga que você criou> copie o nome DNS (registro A), será algo como myproject-2021611191.us-east-1.elb.amazonaws.com
Vá para Route 53> Routes Zones> clique no nome de domínio> Vá para conjuntos de registros (se você não tiver seu domínio aqui, crie uma zona hospedada com Domain Name: myprojectdomainname.com
e Type: Public Hosted Zone
)
Verifique se você tem um tipo de registro A (provavelmente não), crie / edite o conjunto de registros com o nome vazio, digite A, alias Sim e direcione o dns que você copiou
Crie também um novo Conjunto de registros do tipo A , nome *.myprojectdomainname.com
, alias Sim e direcione seu domínio (myprojectdomainname.com). Isso possibilitará o acesso ao seu site com www.myprojectdomainname.com e subsite.myprojectdomainname.com. Observação: você precisará configurar seu proxy reverso (Nginx / Apache) para fazer isso.
No NS, copie os 4 valores de servidores de nomes para usar na próxima etapa, será algo como:
ns-362.awsdns-45.com
ns-1558.awsdns-02.co.uk
ns-737.awsdns-28.net
ns-1522.awsdns-62.org
Vá para EC2> Instâncias> E copie o IP público IPv4 também
Etapa 6
No site de registro de domínio em que você comprou o domínio (no meu caso GoDaddy)
Altere o roteamento para http : <Your IPv4 Public IP Number>
e selecione Encaminhar com mascaramento
Altere os servidores de nomes (NS) para os 4 NS que você copiou. Isso pode levar 48 horas para fazer efeito
As instâncias do Amazon EC2 são apenas máquinas virtuais, portanto, você configuraria o SSL da mesma forma que configuraria em qualquer servidor.
Você não menciona em qual plataforma está, por isso é difícil dar mais informações.
Uma pergunta antiga mas vale a pena mencionar outra opção nas respostas. Caso o sistema DNS do seu domínio tenha sido definido no Amazon Route 53, você pode usar o serviço Amazon CloudFront na frente do seu EC2 e anexar um certificado Amazon SSL gratuito a ele. Dessa forma, você se beneficiará de ter um CDN para uma entrega de conteúdo mais rápida e também de proteger seu domínio com o protocolo HTTPS.
Deve haver também uma resposta para as pessoas que desejam um https sem complicações no ec2, principalmente para fins de demonstração e teste. Uma maneira de conseguir isso rapidamente é:
Com minha resposta aqui, que descreve como você pode obter https para fins de teste em minutos com EC2 sem o incômodo de criar certificados
Use o Elastic Load Balacing , ele suporta a terminação SSL no Load Balancer, incluindo o descarregamento da descriptografia SSL das instâncias do aplicativo e fornecendo gerenciamento centralizado de certificados SSL.
Você também pode usar o Amazon API Gateway . Coloque seu aplicativo por trás do API Gateway. Por favor, verifique este FAQ
Um dos melhores recursos que encontrei foi usar vamos criptografar, você não precisa de ELB nem cloudfront para que sua instância EC2 tenha HTTPS, basta seguir as seguintes instruções simples: vamos criptografar Faça o login no seu servidor e siga os passos no link.
Também é importante, como mencionado por outros, que você tenha a porta 443 aberta editando seus grupos de segurança
Você pode ver o seu certificado ou qualquer outro site alterando o nome do site neste link
Não se esqueça que só é válido por 90 dias