Skip to main content

Como criar usuários no Linux usando o comando "useradd"

A verdade sobre o colesterol com Dr. Lair Ribeiro (Abril 2025)

A verdade sobre o colesterol com Dr. Lair Ribeiro (Abril 2025)
Anonim

Este guia mostra como criar usuários no Linux usando a linha de comando. Embora muitas distribuições Linux de desktop forneçam uma ferramenta gráfica para criar usuários, é uma boa idéia aprender como fazer isso a partir da linha de comando, para que você possa transferir suas habilidades de uma distribuição para outra sem aprender novas interfaces de usuário.

Como criar um usuário

Vamos começar criando um usuário simples.

O comando a seguir adicionará um novo usuário chamado test ao seu sistema:

sudo useradd test

O que acontecerá quando este comando for executado dependerá do conteúdo do arquivo de configuração localizado em / etc / default / useradd.

Para ver o conteúdo de / etc / default / useradd execute o seguinte comando:

sudo nano / etc / default / useradd

O arquivo de configuração irá definir um shell padrão que no Ubuntu é bin / sh. Todas as outras opções estão comentadas.

As opções comentadas permitem que você defina uma pasta base padrão, um grupo, o número de dias após a senha ter expirado antes de a conta ser desativada e a data de vencimento padrão.

O importante a partir das informações acima é que a execução do comando useradd sem qualquer opção pode produzir resultados diferentes em distribuições diferentes e tudo tem a ver com as configurações no / etc / default / useradd Arquivo.

Em adição ao / etc / default / useradd arquivo, há também um arquivo chamado /etc/login.defs que será discutido mais adiante no guia.

O sudo não está instalado em todas as distribuições. Se não estiver instalado, você precisa fazer login em uma conta com permissões apropriadas para criar usuários.

Como criar um usuário com um diretório base

O exemplo anterior era bastante simples, mas o usuário pode ou não ter recebido um diretório base com base no arquivo de configurações.

Para forçar a criação de um diretório inicial, use o seguinte comando:

teste useradd -m

O comando acima cria um / home / test pasta para o teste do usuário.

Como criar um usuário com um diretório home diferente

Se você quiser que o usuário tenha uma pasta pessoal em um local diferente do padrão, poderá usar a opção -d.

sudo useradd -m -d / test test

O comando acima criará uma pasta chamada teste para teste de usuário na pasta raiz.

Dentro da opção -m, a pasta pode não ser criada. Depende da configuração em /etc/login.defs.

Para que isso funcione sem especificar um parâmetro -m, edite o arquivo /etc/login.defs e na parte inferior do arquivo, adicione a seguinte linha:

CREATE_HOME sim

Como alterar a senha de um usuário usando o Linux

Agora que você criou um usuário com uma pasta pessoal, precisará alterar a senha do usuário.

Para definir a senha de um usuário, você precisa usar o seguinte comando:

teste de passwd

O comando acima permitirá que você defina a senha do usuário de teste. Você será solicitado a senha que você deseja usar.

Como trocar usuários

Você pode testar a conta de seu novo usuário digitando o seguinte em uma janela de terminal:

su - teste

O comando acima muda o usuário para a conta de teste e, supondo que você tenha criado uma pasta pessoal, você será colocado na pasta inicial desse usuário.

Criar um usuário com uma data de expiração

Se você estiver trabalhando em um escritório e tiver um novo contratado iniciando quem ficará em seu escritório por um curto período de tempo, será necessário definir uma data de expiração em sua conta de usuário.

Da mesma forma, se você tem família vindo para ficar, então você pode criar uma conta de usuário para esse membro da família que expira depois que eles saíram.

Para definir uma data de expiração ao criar um usuário, use o seguinte comando:

useradd -d / home / test -e 2016-02-05 teste

A data deve ser especificada no formato AAAA-MM-DD, em que AAAA é o ano, MM é o número do mês e DD é o número do dia.

Como criar um usuário e atribuí-lo a um grupo

Se você tiver um novo usuário ingressando em sua empresa, poderá designar grupos específicos para esse usuário, para que ele tenha acesso aos mesmos arquivos e pastas que os outros membros de sua equipe.

Por exemplo, imagine que você tinha um cara chamado John e ele estava se juntando como contador.

O comando a seguir adicionaria john ao grupo de contas.

useradd -m john -G contas

Ajustando Padrões de Login no Linux

O arquivo /etc/login.defs é um arquivo de configuração que fornece o comportamento padrão para atividades de login.

Existem algumas configurações importantes neste arquivo. Para abrir o /etc/login.defs arquivo digite o seguinte comando:

sudo nano /etc/login.defs

O arquivo login.defs contém as seguintes configurações que você pode querer alterar:

  • PASS_MAX_DAYS - Quanto tempo antes de uma senha expirar.
  • PASS_MIN_DAYS - Com que freqüência uma senha pode ser alterada?
  • PASS_WARN_AGE - Número de dias avisando antes de uma senha expirar.
  • LOGIN_RETRIES - Número de tentativas de login antes da falha.
  • LOGIN_TIMEOUT - Quanto tempo demora antes que o login expire.
  • DEFAULT_HOME - Um usuário pode fazer login se não houver uma pasta pessoal.

Essas são as opções padrão e podem ser substituídas ao criar um novo usuário.

Como especificar a expiração da senha de login ao criar um usuário

Você pode definir uma data de expiração da senha, o número de novas tentativas de login e o tempo limite ao criar um usuário.

O exemplo a seguir mostra como criar um usuário com um aviso de senha, um número máximo de dias antes de a senha expirar e tentativas de login definidas.

sudo useradd test5 -m -K PASS_MAX_DAYS = 5 -K PASS_WARN_AGE = 3 -K LOGIN_RETRIES = 1

Forçar a criação de um usuário sem uma pasta inicial

Se o arquivo login.defs tiver a opção CREATE_HOME simdefinir, em seguida, quando um usuário é criado, uma pasta pessoal será criada automaticamente.

Para criar um usuário sem uma pasta pessoal, independentemente das configurações, use o seguinte comando:

teste useradd -M

É bastante confuso que -m significa criar lar e -M significa não criar lar.

Especifique o nome completo do usuário ao criar um usuário

Como parte de sua política de criação de usuários, você pode optar por fazer algo como a primeira inicial, seguida pelo sobrenome. Por exemplo, o nome de usuário de "John Smith" será "jsmith".

Ao procurar detalhes sobre um usuário, você pode não conseguir distinguir entre John Smith e Jenny Smith.

Você pode adicionar um comentário ao criar uma conta para que seja mais fácil descobrir o nome real do usuário.

O seguinte comando mostra como fazer isso:

useradd -m jsmith -c "john smith"

Analisando o arquivo / etc / passwd

Quando você cria um usuário, os detalhes desse usuário são adicionados ao / etc / passwd Arquivo.

Para ver os detalhes sobre um usuário em particular, você pode usar o comando grep da seguinte maneira:

grep john / etc / passwd

O comando acima retornará detalhes sobre todos os usuários com a palavra john como parte do nome de usuário.

o / etc / passuword O arquivo contém uma lista separada por dois pontos de campos sobre cada usuário.

Os campos são os seguintes:

  • Nome de usuário;
  • Senha criptografada (que obviamente você não pode ver);
  • ID do usuário;
  • ID do grupo do usuário;
  • Nome completo do usuário;
  • Diretório inicial do usuário;
  • Shell de login.