Criação de uma instância EC2 em um VPC com a AWS Command Line Interface

Prefácio: O artigo original deste post foi movido para aqui no meu blog pessoal .

Configurar uma instância EC2 na AWS costumava ser tão simples quanto provisionar uma máquina e efetuar SSH nela. No entanto, esse processo se tornou um pouco mais complicado agora que o Amazon VPC se tornou o padrão para o gerenciamento de máquinas na nuvem.

Então, o que exatamente é uma nuvem privada virtual? A Amazon define um VPC como uma ‘seção isolada logicamente da nuvem AWS’. As instâncias iniciadas dentro de um VPC podem, por padrão, se comunicar apenas com outras instâncias no mesmo VPC e, portanto, são invisíveis para o resto da Internet. Isso significa que eles não aceitarão conexões SSH provenientes do seu computador nem responderão a quaisquer solicitações http. Neste artigo, veremos como alterar essas configurações padrão para algo mais adequado a um servidor de uso geral.

Configurando seu VPC

Comece instalando a interface de linha de comando da AWS em sua máquina, caso ainda não tenha feito isso. Feito isso, agora podemos criar nosso VPC.

vpcId=`aws ec2 create-vpc --cidr-block 10.0.0.0/28 --query 'Vpc.VpcId' --output text`

Existem várias coisas interessantes aqui:

  • o parâmetro especifica uma máscara de rede / 28 que permite 16 endereços IP. Esta é a menor máscara de rede com suporte.--cidr-block
  • o comando retorna uma string JSON. Podemos usar os parâmetros e para filtrar campos específicos dessa string.create-vpc--query--output

A próxima etapa é substituir as configurações VPC DNS padrão. Conforme mencionado anteriormente, as instâncias iniciadas dentro de um VPC são invisíveis para o resto da Internet por padrão. Portanto, a AWS não se preocupa em atribuir a eles um nome DNS público. Felizmente, isso pode ser alterado facilmente.

aws ec2 modify-vpc-attribute --vpc-id $vpcId --enable-dns-support "{"Value"":true}""
aws ec2 modify
-vpc-attribute --vpc-id $vpcId --enable-dns-hostnames ""{""Value"":true}""

Adicionando um Gateway de Internet

Em seguida