2
respostas

Erro ao acessa VM

Estou com esse erro ao tentar acessa a VM, e não encontrei solução.

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: UNPROTECTED PRIVATE KEY FILE! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ Permissions for 'key.pem' are too open. It is required that your private key files are NOT accessible by others. This private key will be ignored. Load key "key.pem": bad permissions ec2-user@exemplo.compute-1.amazonaws.com: Permission denied (publickey,gssapi-keyex,gssapi-with-mic). Obs: Já liberei acesso a todo tráfego na AWS.

2 respostas

Tudo bem João?

Isso ocorre quando temos um problema de permissão no arquivo, tenta executar o chmod 400 seguido do nome da chave.

Se você esta usando o WSL, é interessante copiar o arquivo da chave para uma pasta que não seja compartilhada com o Windows. O sistema de arquivos do windows (NTFS) não suporta permissões por arquivo, então apesar de você executar o chmod 400 as permissões não são gravadas no arquivo, mantendo ele como 777 (acessível a todos para leitura e gravação).

Sendo assim, copie a chave para uma pasta dentro do WSL, como em /home/joao e depois execute o chmod 400.

Dica: para criar a pasta caso ela não exista, é o mkdir seguido do caminho da pasta, logo mkdir /home/joao

Espero ter ajudado, continue se esforçando e bons estudos.

Para quem não está conseguindo acessar via SSH no VScode (utilizando o Windows) em vez de criar o par de chaves la na AWS faça o procedimento de criar o par de chaves pelo Prompt de comando em sua máquina local:

1 - Execute o comando abaixo no Prompt de comando (CMD) com privilégios de Administrador (substituindo o nome-da-chave por uma de sua preferência):

ssh-keygen -f nome-da-chave -t rsa

  • Enter duas vezes para salvar sem senha

2 - Agora é só importar a chave que foi criada.

  • Na AWS em Network & Security > Key Pairs
  • Em Actions > Import Key Pairs

3 - Definir no arquivo main.tf o nome da chave que foi criada.

Em resources

key_name = "nome-da-chave"

4 - Salve as modificações e depois vamos recriar a instância:

terraform plan

terraform apply

5 - Criada a instância é só ir na AWS > Instances, copiar o código SSH da maquina que foi criada e colar no terminal do VScode

Exemplo:ssh -i "nome-da-chave" ubuntu@ec2-18-237-39-55.us-west-2.compute.amazonaws.com

OBS: Lembre de apagar o .pem no código gerado se não vai dar erro