Criar key-pair no EC2

Antes de criarmos a instância, é extremamente necessário deixá-la segura. Uma das medidas de segurança passa por criarmos um par de chaves onde, ao entrarmos na instância via SSH (porta 22), enviamos uma parte da chave que será utilizada para verificar sua autenticidade com a outra parte, guardada previamente no servidor. Desta forma, qualquer acesso SSH sem a chave será negado.

A este par de chaves damos o nome de criptografia assimétrica, onde a chave guardada no computador do user é a privada e a outra parte guardada no servidor é a pública.

Para nossa sorte, a AWS permite criar um par de chaves via CLI. A chave pública fica guardada na nossa conta da AWS e pode ser utilizada nas instâncias que iremos criar. E no output do comando, vamos extrair o conteúdo da chave privada para guardarmos no nosso computador e utilizá-la quando quisermos acessar as instâncias que iremos criar.

aws --profile personal ec2 \
    create-key-pair \
    --key-name aws-ec2-key \
    --key-type ed25519 \
    | jq -r '.KeyMaterial' > ~/.ssh/aws-ec2-key.pem
  • ec2 é o nome do serviço na AWS

  • create-key-pair é o nome da ação

  • na opção key-name especificamos o nome da nossa chave na AWS

  • com key-type escolhemos o algoritmo de criptografia

  • depois, com pipe (|), mandamos o output para ser extraído conteúdo da chave privada com jq

  • no fim, jogamos (>) o output final com a chave privada em um arquivo chamado ~/.ssh/aws-ec2-key.pem, que será utilizado posteriormente quando entrarmos nas instâncias com SSH

Verificando que a chave foi criada

leandronsp:~ $ aws --profile personal ec2 \
    describe-key-pairs \
    | jq -r '.KeyPairs[0].KeyName'
    
aws-ec2-key

Last updated