Gerenciar usuários na instância do Amazon Linux - Amazon Elastic Compute Cloud

Gerenciar usuários na instância do Amazon Linux

Cada tipo de instância do Linux é iniciada com um usuário padrão do sistema Linux. Você pode adicionar e excluir usuários da instância.

Para o usuário padrão, o nome de usuário padrão é determinado pela AMI especificada quando você iniciou a instância.

nota

Por padrão, a autenticação por senha e o login raiz estão desabilitados e o sudo está habilitado. Para fazer login na instância, você deve criar um par de chaves. Para obter mais informações sobre login, consulte Conecte-se à sua instância do Linux.

Você pode permitir a autenticação por senha e o login raiz na instância. Para obter mais informações, consulte a documentação do seu sistema operacional.

nota

Os usuários do sistema Linux não devem ser confundidos com os usuários do IAM. Para obter mais informações, consulte Usuários IAM no Manual do usuário IAM.

Nomes de servidores padrão

O nome de usuário padrão para a instância do EC2 é determinado pela AMI especificada quando você iniciou instância.

Os nomes de usuário padrão são:

  • Para AL2023, Amazon Linux 2 ou Amazon Linux AMI, o nome do usuário é ec2-user.

  • Para uma AMI do CentOS, o nome do usuário é centos ou ec2-user.

  • Para uma AMI do Debian, o nome do usuário é admin.

  • Para uma AMI do Fedora, o nome do usuário é fedora ou ec2-user.

  • Para uma AMI do RHEL, o nome do usuário é ec2-user ou root.

  • Para uma AMI do SUSE, o nome do usuário é ec2-user ou root.

  • Para uma AMI do Ubuntu, o nome de usuário é ubuntu.

  • Para uma AMI do Oracle, o nome do usuário é ec2-user.

  • Para uma AMI do Bitnami, o nome do usuário é bitnami.

nota

Para encontrar o nome de usuário padrão para outras distribuições Linux, verifique com o fornecedor da AMI.

Considerações

O uso do usuário padrão é adequado para muitas aplicações. Porém, você pode escolher adicionar usuários para que as pessoas possam ter seus próprios arquivos e espaços de trabalho. Além disso, a criação usuários para novos usuários é muito mais segura do que conceder a vários usuários (possivelmente inexperientes) acesso ao usuário padrão, pois essa conta pode causar muitos danos a um sistema quando usada de modo inadequado. Para obter mais informações, consulte Dicas para proteger sua instância do EC2.

Para permitir aos usuários acesso SSH à sua instância do EC2 usando um usuário do sistema Linux, é necessário compartilhar a chave SSH com o usuário. Uma outra opção é usar o EC2 Instance Connect para fornecer acesso aos usuários sem precisar compartilhar e gerenciar as chaves SSH. Para ter mais informações, consulte Conectar-se à instância do Linux com o EC2 Instance Connect.

Criar um usuário

Primeiro crie o usuário e, depois, adicione a chave pública SSH que permitirá que ele se conecte e faça login na instância.

Como criar um usuário
  1. Crie um novo par de chaves. É necessário fornecer o arquivo .pem ao usuário para o qual você está criando o usuário. Ele deve usar esse arquivo para se conectar à instância.

  2. Recupere a chave pública do par de chaves criado na etapa anterior.

    $ ssh-keygen -y -f /path_to_key_pair/key-pair-name.pem

    O comando retorna a chave pública, como mostrado no exemplo a seguir.

    ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQClKsfkNkuSevGj3eYhCe53pcjqP3maAhDFcvBS7O6Vhz2ItxCih+PnDSUaw+WNQn/mZphTk/a/gU8jEzoOWbkM4yxyb/wB96xbiFveSFJuOp/d6RJhJOI0iBXrlsLnBItntckiJ7FbtxJMXLvvwJryDUilBMTjYtwB+QhYXUMOzce5Pjz5/i8SeJtjnV3iAoG/cQk+0FzZqaeJAAHco+CY/5WrUBkrHmFJr6HcXkvJdWPkYQS3xqC0+FmUZofz221CBt5IMucxXPkX4rWi+z7wB3RbBQoQzd8v7yeb7OzlPnWOyN0qFU0XA246RA8QFYiCNYwI3f05p6KLxEXAMPLE
  3. Conecte-se à instância.

  4. Use o comando adduser para criar o usuário e adicioná-lo ao sistema (com uma entrada no arquivo /etc/passwd). O comando também cria um grupo e um diretório inicial para o usuário. Neste exemplo de configuração, o usuário é deniminado newuser.

    • Amazon Linux e Amazon Linux 2

      Com o Amazon Linux e o Amazon Linux 2, o usuário é criada com a autenticação por senha desabilitada por padrão.

      [ec2-user ~]$ sudo adduser newuser
    • Ubuntu

      Inclua o parâmetro --disabled-password para criar o usuário com autenticação por senha desabilitada.

      [ubuntu ~]$ sudo adduser newuser --disabled-password
  5. Mude para o novo usuário, de modo que o diretório e o arquivo criados pertençam aos proprietários adequados.

    [ec2-user ~]$ sudo su - newuser

    O prompt é alterado de ec2-user para newuser para indicar que você mudou a sessão do shell para o novo usuário.

  6. Adicione a chave pública SSH ao usuário. Primeiro, crie um diretório no diretório inicial do usuário para o arquivo de chave SSH. Depois disso, crie o arquivo de chave e, por fim, cole a chave pública no arquivo de chave, conforme descrito nas etapas secundárias a seguir.

    1. Crie um diretório .ssh no diretório inicial newuser e altere suas permissões de arquivos para 700 (somente o proprietário pode ler, gravar ou abrir o diretório).

      [newuser ~]$ mkdir .ssh
      [newuser ~]$ chmod 700 .ssh
      Importante

      Sem essas permissões de arquivos, o usuário não poderá se conectar.

    2. Crie um arquivo chamado authorized_keys no diretório .ssh e altere suas permissões de arquivos para 600 (somente o proprietário pode ler ou gravar no arquivo).

      [newuser ~]$ touch .ssh/authorized_keys
      [newuser ~]$ chmod 600 .ssh/authorized_keys
      Importante

      Sem essas permissões de arquivos, o usuário não poderá se conectar.

    3. Abra o arquivo authorized_keys usando seu editor de texto favorito (como vim ou nano).

      [newuser ~]$ nano .ssh/authorized_keys

      Cole a chave pública recuperada na Etapa 2 no arquivo e salve as alterações.

      Importante

      Cole a chave pública em uma linha contínua. A chave pública não deve ser dividida em várias linhas.

      Agora, o usuário deve poder fazer login no usuário newuser na instância usando a chave privada correspondente à chave pública adicionada ao arquivo authorized_keys. Para obter mais informações sobre os diferentes métodos de conexão a uma instância do Linux, consulte Conecte-se à sua instância do Linux.

Remover um usuário

Se um usuário não for mais necessário, será possível removê-lo para que não possa mais ser usado.

Use o comando userdel para remover o usuário do sistema. Quando você especifica o parâmetro -r, o diretório inicial e o spool de e-mail do usuário são excluídos. Para manter o diretório inicial e o spool de e-mail do usuário, omita o parâmetro -r.

[ec2-user ~]$ sudo userdel -r olduser