1
resposta

Criar usuário na VM EC2

Consegui criar a instância EC2 sem problemas e até adicionar as informações do bash, contudo gostaria de saber o que fazer para já criar um usuário e senha usando o Terraform na criação da máquina caso já quisesse deixar a máquina pronta para uso pelo desenvolvedor, por exemplo.

1 resposta

Olá, Cledson.

Tudo bem?

Você pode tentar fazer isso usando o campo user_data no recurso aws_instance, da mesma forma que foi feito na aula para criar o arquivo e iniciar o servidor. No entanto, a criação de um usuário e senha seria feita com comandos diferentes.

Aqui está um exemplo de como você poderia fazer isso:

resource "aws_instance" "app_server" {
  ami = "ami-03d5c68bab01f3496"
  instance_type = "t2.micro"
  key_name = "iac-alura"
  user_data = <<-EOF
                #!/bin/bash
                sudo adduser novo_usuario
                echo -e "senha\nsenha" | sudo passwd novo_usuario
                EOF
  tags {
    Name = "Primeira instancia"
  }
}

Neste exemplo, o comando sudo adduser novo_usuario cria um novo usuário chamado novo_usuario. O comando echo -e "senha\nsenha" | sudo passwd novo_usuario define a senha do novo usuário como senha. O -e permite que o echo interprete os caracteres de controle, como o \n que é usado para simular a entrada de uma nova linha, que é necessária para confirmar a senha.

Porém, é importante ressaltar que a prática de criar usuários e senhas dessa maneira não é segura e não é recomendada para ambientes de produção. Para ambientes de produção, é recomendado usar chaves SSH para autenticação, que é mais seguro do que usar senhas.

Espero ter ajudado. Qualquer dúvida manda aqui. Bons estudos.