Introdução
Neste laboratório, você aprenderá as operações básicas de gerenciamento de contas de usuários em sistemas Linux. Você aprenderá a criar, modificar e excluir contas de usuários, além de definir e alterar senhas. Essas são habilidades fundamentais para a administração de sistemas Linux. Se você está começando no Linux, não se preocupe: tudo será explicado passo a passo.
Criar um novo usuário
Vamos começar criando uma nova conta de usuário chamada "joker".
- Abra um terminal. No Linux, o terminal é uma interface de texto na qual você pode digitar comandos.
- Digite o comando a seguir e pressione Enter:
sudo useradd joker
Veja o que cada parte do comando significa:
sudoé um comando que concede temporariamente privilégios de superusuário (administrador). Usamossudoporque a criação de um novo usuário exige permissões elevadas.useraddé o comando usado para criar um novo usuário.jokeré o nome de usuário que estamos criando.
Observação: se você tentar executar esse comando sem sudo, verá um erro de "permission denied". Isso acontece porque usuários comuns não podem criar novas contas de usuários; essa tarefa é reservada aos administradores do sistema.
Esse exemplo destaca a diferença entre um superusuário e um usuário comum. Como usuário comum, você não pode criar novas contas de usuários. Ao usar sudo, porém, pode elevar temporariamente seus privilégios para executar essa tarefa administrativa.
- Para confirmar que o usuário foi criado, consulte o arquivo
/etc/passwd:
sudo grep -w 'joker' /etc/passwd
O arquivo /etc/passwd funciona como uma lista de contas de usuários. Cada linha representa uma conta e contém diferentes informações separadas por dois-pontos (:).
Você deverá ver uma saída semelhante a esta:
joker:x:5001:5001::/home/joker:/bin/sh
Essa linha mostra:
- Nome de usuário: joker
- Senha: x (a senha real é armazenada com segurança em outro local)
- ID do usuário: 5001
- ID do grupo: 5001
- Diretório pessoal:
/home/joker, mas ele ainda não foi criado - Shell padrão:
/bin/sh
Criar um usuário com um diretório pessoal
Agora, vamos criar outro usuário chamado "bob" e atribuir a ele um diretório pessoal.
- Execute o comando a seguir:
sudo useradd -m bob
A opção -m instrui o sistema a criar um diretório pessoal para o usuário. O diretório pessoal funciona como uma pasta particular onde o usuário pode armazenar arquivos e configurações.
- Confirme que o diretório pessoal foi criado:
sudo ls -ld /home/bob
Você deverá ver uma saída semelhante a esta:
drwxr-x--- 2 bob bob 57 Jan 19 13:33 /home/bob
Essa saída mostra:
dno início indica que se trata de um diretório.rwxr-x---mostra quem pode ler, gravar ou executar nesse diretório.- As duas ocorrências de
bobmostram que o usuário proprietário e o grupo proprietário desse diretório sãobob. 57é o tamanho do diretório em bytes.Jan 19 13:33indica quando o diretório foi criado./home/bobé o local do diretório.
Definir a senha de um usuário
Agora precisamos definir uma senha para nossos novos usuários. Vamos definir uma senha para "joker".
- Execute o comando a seguir:
sudo passwd joker
- Você deverá digitar uma nova senha duas vezes. Para este laboratório, use uma senha simples, como "password123".
Importante: a senha não será exibida enquanto você a digita. Esse é um recurso de segurança do Linux que impede que outras pessoas vejam sua senha. Se você digitar a senha errada por engano, poderá tentar novamente. Importante: memorize essa senha. Você precisará dela mais adiante no laboratório.
- Se tudo funcionar corretamente, você verá uma mensagem informando "passwd: password updated successfully".
Observação: em situações reais, use sempre senhas fortes e exclusivas.
Internamente, o Linux armazena as senhas criptografadas em um arquivo seguro chamado /etc/shadow. Isso é mais seguro do que armazená-las no arquivo /etc/passwd, onde qualquer pessoa poderia vê-las.
Modificar propriedades de um usuário
O Linux permite alterar várias configurações de uma conta de usuário depois que ela é criada. Como exemplo, vamos alterar o diretório pessoal de joker.
- Execute o comando a seguir:
sudo usermod -d /home/wayne joker
Veja o que esse comando faz:
usermodé o comando usado para modificar as configurações de uma conta de usuário.-d /home/wayneespecifica o novo diretório pessoal.jokeré o usuário que estamos modificando.
- Confirme a alteração:
sudo grep -w 'joker' /etc/passwd
A opção -w faz a correspondência da palavra inteira, e grep procura essa palavra no arquivo. Na saída, você deverá ver que o diretório pessoal de joker foi atualizado.
Alterar o shell do usuário
Outra configuração importante que podemos modificar é o shell padrão do usuário. O shell é o programa que interpreta e executa os comandos digitados no terminal.
Por padrão, o usuário joker usa /bin/sh como shell. Embora sh (Bourne Shell) seja um shell básico presente na maioria dos sistemas semelhantes ao Unix, bash (Bourne Again Shell) oferece mais recursos e, em geral, é mais fácil de usar.
Alterar o shell de joker para bash oferece vários benefícios:
- Interface de linha de comando mais intuitiva
- Recursos de criação de scripts mais avançados
- Mais opções de personalização para o ambiente do usuário
Veja como fazer essa alteração:
- Altere o shell padrão de
jokerparabash:
sudo usermod -s /bin/bash joker
- Confirme a alteração:
sudo grep -w 'joker' /etc/passwd
Você deverá ver /bin/bash no final da entrada de joker. Isso significa que bash agora é o shell padrão de joker.
Depois dessa alteração, joker terá acesso ao ambiente bash, que oferece mais recursos, sempre que fizer login ou abrir uma nova sessão de terminal.
Adicionar um usuário a um grupo
No Linux, usamos grupos para organizar usuários e gerenciar permissões. Um grupo importante é o grupo sudo, que concede privilégios administrativos aos usuários. Como exemplo, vamos adicionar joker ao grupo sudo.
Por que adicionar um usuário ao grupo sudo?
- Administração do sistema: usuários do grupo
sudopodem executar tarefas administrativas em todo o sistema. - Instalação de software: membros do grupo
sudopodem instalar e atualizar pacotes de software. - Alterações de configuração: eles podem modificar arquivos de configuração do sistema.
- Gerenciamento de usuários: eles podem criar, modificar ou excluir outras contas de usuários.
Você pode se perguntar: "Por que adicionar alguém ao grupo sudo se sempre podemos usar o comando sudo?" Veja os motivos:
- Conveniência: usuários do grupo
sudopodem usarsudosem precisar saber a senha doroot. Eles usam a própria senha. - Controle granular: os administradores do sistema podem configurar o
sudopara permitir que usuários específicos executem apenas determinados comandos com privilégios de superusuário. - Rastreabilidade: ao contrário do compartilhamento da senha do
root, osudoregistra quem executou cada comando, melhorando a segurança e a rastreabilidade. - Segurança: em geral, é mais seguro ter contas identificadas com acesso ao
sudodo que compartilhar a senha dorootentre vários administradores.
Em uma situação real, normalmente você adicionaria um usuário ao grupo sudo se:
- Ele fosse administrador de sistemas ou integrante da equipe de TI e precisasse executar tarefas de manutenção regularmente.
- Ele fosse desenvolvedor e precisasse instalar determinados softwares ou fazer alterações no sistema para realizar seu trabalho.
- Ele fosse um usuário avançado que precisasse de privilégios elevados para determinadas tarefas, mas você não quisesse fornecer a senha do
root.
Lembre-se: adicionar um usuário ao grupo sudo concede a ele um poder significativo sobre o sistema. Portanto, faça isso com cautela e somente quando for necessário.
Agora, vamos adicionar joker ao grupo sudo:
- Execute este comando:
sudo usermod -aG sudo joker
Veja o que esse comando faz:
usermodé o comando usado para modificar contas de usuários.-aGsignifica "adicionar ao grupo" (adiciona o usuário a um grupo sem removê-lo dos outros grupos).sudoé o grupo ao qual estamos adicionando o usuário.jokeré o usuário que estamos modificando.
- Confirme a alteração:
groups joker
Você deverá ver sudo listado entre os grupos de joker.
- Para ver o efeito dessa alteração, precisamos mudar para o usuário
jokere tentar executar um comando que exige privilégios desudo:
su - joker
Esse comando muda o usuário atual (labex) para o usuário joker. Será solicitado que você informe a senha de joker. Lembre-se de que essa é a senha definida anteriormente (password123). Enquanto você digita a senha, nenhum caractere aparecerá na tela; isso é um recurso de segurança.
- Depois de entrar como
joker, tente visualizar um arquivo que normalmente exige privilégios deroot:
sudo cat /etc/shadow
Quando solicitado, digite novamente a senha de joker. Você deverá conseguir ver o conteúdo do arquivo /etc/shadow, que normalmente só pode ser acessado pelo root. Isso confirma que joker agora tem privilégios de sudo.
- Quando terminar, digite
exitpara voltar à sua conta de usuário original (labex).
Observação: em um ambiente de produção, tenha muito cuidado ao adicionar alguém ao grupo sudo. Com grandes poderes vêm grandes responsabilidades.
Bloquear e desbloquear contas de usuários
Às vezes, pode ser necessário desativar temporariamente uma conta de usuário sem excluí-la.
- Bloqueie a conta
joker:
sudo passwd -l joker
A opção -l bloqueia a senha.
- Tente mudar para o usuário
joker:
su - joker
Será solicitada uma senha. Digite a senha definida anteriormente para joker ("password123", se você seguiu nossa sugestão).
Você deverá ver uma mensagem de "authentication failure". Isso significa que a conta foi bloqueada com sucesso.
- Agora, desbloqueie a conta:
sudo passwd -u joker
A opção -u desbloqueia a senha.
- Tente mudar para o usuário
jokernovamente:
su - joker
Digite a senha quando solicitado. Desta vez, você deverá conseguir mudar para o usuário joker.
Digite exit para voltar à sua conta de usuário original antes de continuar para a próxima etapa.
Excluir um usuário
Por fim, vamos aprender a excluir um usuário. Excluiremos o usuário "bob", criado anteriormente.
- Exclua
bobe o diretório pessoal dele:
sudo userdel -r bob
O comando userdel exclui contas de usuários. A opção -r remove o diretório pessoal do usuário e a fila de mensagens de e-mail.
- Confirme que o usuário foi excluído:
sudo grep -w 'bob' /etc/passwd
sudo ls -ld /home/bob
Os dois comandos não deverão retornar nenhum resultado. Isso significa que o usuário e o diretório pessoal dele foram removidos com sucesso.
Resumo
Parabéns! Você concluiu o laboratório de gerenciamento de contas de usuários no Linux. Você aprendeu a:
- Criar novas contas de usuários
- Definir senhas de usuários
- Modificar propriedades de usuários, como o diretório pessoal e o shell padrão
- Adicionar usuários a grupos
- Bloquear e desbloquear contas de usuários
- Excluir contas de usuários
Você também conheceu conceitos importantes do Linux, como o arquivo /etc/passwd, diretórios pessoais, shells e grupos de usuários. Essas são habilidades fundamentais para a administração de sistemas Linux. Lembre-se: em situações reais, siga sempre as políticas de segurança da sua organização ao gerenciar contas de usuários.



