Introdução
Este laboratório guiará você pelas operações básicas de gerenciamento de contas de usuário em sistemas Linux. Você aprenderá a criar, modificar e excluir contas de usuário, bem como a definir e alterar senhas. Estas são habilidades fundamentais para a administração de sistemas Linux. Não se preocupe se você for novo no Linux — explicaremos tudo passo a passo!
Criando 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 onde você pode inserir comandos.
- Digite o seguinte comando e pressione Enter:
sudo useradd joker
Vamos detalhar o que isso faz:
sudoé um comando que concede privilégios temporários de superusuário (administrador). Nós o utilizamos porque a criação de um novo usuário exige essas permissões de alto nível.useraddé o comando para criar um novo usuário.jokeré o nome de usuário que estamos criando.
Nota: Se você tentar executar este comando sem o sudo, receberá um erro de "permissão negada" (permission denied). Isso ocorre porque usuários comuns não têm permissão para criar novas contas — esta é uma tarefa reservada aos administradores do sistema.
Isso destaca a diferença entre um superusuário e um usuário comum. Como usuário comum, você não pode criar contas, mas ao usar o sudo, você eleva temporariamente seus privilégios para realizar essa tarefa administrativa.
- Para verificar se o usuário foi criado, examinaremos o arquivo
/etc/passwd:
sudo grep -w 'joker' /etc/passwd
O arquivo /etc/passwd funciona como uma agenda de contatos para contas de usuário. Cada linha representa uma conta, com diferentes informações separadas por dois-pontos (:).
Você deverá ver uma saída semelhante a:
joker:x:5001:5001::/home/joker:/bin/sh
Esta linha mostra:
- Nome de usuário: joker
- Senha: x (a senha real é armazenada de forma segura em outro local)
- ID do Usuário (UID): 5001
- ID do Grupo (GID): 5001
- Diretório Home:
/home/joker, mas ele ainda não foi criado - Shell Padrão:
/bin/sh
Criando um Usuário com Diretório Home
Agora, vamos criar outro usuário chamado "bob" e atribuir a ele um diretório home.
- Execute o seguinte comando:
sudo useradd -m bob
A opção -m instrui o sistema a criar um diretório home para o usuário. O diretório home é como uma pasta pessoal onde o usuário pode armazenar seus arquivos e configurações.
- Vamos verificar se o diretório home foi criado:
sudo ls -ld /home/bob
Você deverá ver uma saída semelhante a:
drwxr-x--- 2 bob bob 57 Jan 19 13:33 /home/bob
Esta saída mostra:
- O
dno início indica que é um diretório (directory) drwxr-x---mostra quem pode ler, escrever ou executar neste diretório- As duas entradas
bobmostram que tanto o usuário quanto o grupo proprietário deste diretório é o bob 57é o tamanho do diretório em bytesJan 19 13:33é a data e hora em que o diretório foi criado/home/bobé a localização do diretório
Definindo a Senha do Usuário
Agora precisamos definir uma senha para nossos novos usuários. Vamos definir a senha para o "joker".
- Execute o seguinte comando:
sudo passwd joker
- Será solicitado que você digite a 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. Este é um recurso de segurança do Linux para evitar que outras pessoas vejam sua senha. Se você digitar a senha errada acidentalmente, poderá tentar novamente. Importante: Lembre-se desta senha! Você precisará dela mais adiante no laboratório.
- Se for bem-sucedido, você verá a mensagem "passwd: password updated successfully".
Nota: Em um cenário real, use sempre senhas fortes e exclusivas!
Nos bastidores, o Linux armazena as senhas criptografadas em um arquivo seguro chamado /etc/shadow. Isso é muito mais seguro do que armazená-las no /etc/passwd, onde qualquer pessoa poderia visualizá-las.
Modificando Propriedades do Usuário
O Linux nos permite alterar várias configurações de uma conta de usuário após ela ter sido criada. Vamos mudar o diretório home do joker como exemplo.
- Execute o seguinte comando:
sudo usermod -d /home/wayne joker
Eis o que isso faz:
usermodé o comando para modificar as configurações de conta de usuário-d /home/wayneespecifica o novo diretório homejokeré o usuário que estamos modificando
- Vamos verificar a alteração:
sudo grep -w 'joker' /etc/passwd
A opção -w é usada para buscar a palavra exata, e o grep é usado para procurar essa palavra no arquivo. Você deverá ver na saída que o diretório home do joker foi atualizado.
Alterando 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 que você digita no terminal.
Por padrão, o usuário 'joker' está usando o /bin/sh. Embora o sh (Bourne Shell) seja um shell básico presente na maioria dos sistemas Unix, o bash (Bourne Again Shell) oferece mais recursos e é geralmente mais amigável ao usuário.
Alterar o shell do joker para bash traz vários benefícios:
- Interface de linha de comando mais intuitiva
- Recursos de script aprimorados
- Melhores opções de personalização para o ambiente do usuário
Veja como realizar a mudança:
- Altere o shell padrão do joker para bash:
sudo usermod -s /bin/bash joker
- Verifique a alteração:
sudo grep -w 'joker' /etc/passwd
Você deverá ver /bin/bash ao final da entrada do joker. Isso significa que o bash agora é o shell padrão dele.
Após essa alteração, o joker terá acesso ao ambiente bash, muito mais rico em recursos, sempre que fizer login ou abrir uma nova sessão de terminal.
Adicionando um Usuário a um Grupo
No Linux, utilizamos grupos para organizar usuários e gerenciar permissões. Um grupo importante é o grupo sudo, que concede privilégios administrativos aos usuários. Vamos adicionar o joker ao grupo sudo como exemplo.
Por que adicionaríamos um usuário ao grupo sudo?
- Administração do sistema: Usuários no grupo sudo podem realizar tarefas administrativas em todo o sistema.
- Instalação de software: Membros do grupo sudo podem 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ário.
Você pode se perguntar: "Por que adicionar alguém ao grupo sudo se podemos sempre usar o comando 'sudo'?" Aqui está o porquê:
- Conveniência: Usuários no grupo sudo podem usar o comando sem precisar saber a senha do root. Eles usam sua própria senha.
- Controle granular: Administradores do sistema podem configurar o sudo para permitir que usuários específicos executem apenas certos comandos com privilégios de superusuário.
- Responsabilidade: Ao contrário do compartilhamento da senha do root, o sudo registra quem executou qual comando, melhorando a segurança e a rastreabilidade.
- Segurança: Geralmente é mais seguro ter contas nomeadas com acesso sudo do que compartilhar a senha do root entre vários administradores.
Em um cenário real, você normalmente adicionaria um usuário ao grupo sudo se:
- Ele for um administrador de sistema ou membro da equipe de TI que precisa realizar tarefas de manutenção regulares.
- Ele for um desenvolvedor que precisa instalar softwares específicos ou fazer alterações no sistema para seu trabalho.
- Ele for um usuário avançado que precisa de privilégios elevados para certas tarefas, mas você não quer fornecer a senha do root.
Lembre-se, adicionar um usuário ao grupo sudo concede a ele um poder significativo sobre o sistema, portanto, isso deve ser feito com cautela e apenas quando necessário.
Agora, vamos adicionar o joker ao grupo sudo:
- Execute este comando:
sudo usermod -aG sudo joker
Eis o que isso faz:
usermodé o comando para modificar contas de usuário-aGsignifica "append to Group" (adicionar ao grupo sem remover de outros grupos)sudoé o grupo ao qual estamos adicionando o usuáriojokeré o usuário que estamos modificando
- Verifique a alteração:
groups joker
Você deverá ver sudo listado entre os grupos do joker.
- Para ver o efeito desta alteração, precisamos alternar para o usuário joker e tentar um comando que exija privilégios de sudo:
su - joker
Este comando alterna do seu usuário atual (labex) para o usuário joker. Será solicitado que você insira a senha do joker. Lembre-se, esta é a senha que você definiu anteriormente (password123). Ao digitar a senha, você não verá nenhum caractere na tela — isso é um recurso de segurança.
- Uma vez logado como joker, vamos tentar visualizar um arquivo que normalmente exige privilégios de root:
sudo cat /etc/shadow
Digite a senha do joker novamente quando solicitado. Você deverá conseguir ver o conteúdo do arquivo /etc/shadow, que geralmente só é acessível ao root. Isso confirma que o joker agora tem privilégios de sudo.
- Quando terminar, digite
exitpara retornar à sua conta de usuário original (labex).
Nota: Em um ambiente de produção, você deve ser muito cuidadoso sobre quem adiciona ao grupo sudo. Com grandes poderes vêm grandes responsabilidades!
Bloqueando e Desbloqueando Contas de Usuário
Às vezes, você pode precisar desativar temporariamente uma conta de usuário sem excluí-la.
- Bloqueie a conta do joker:
sudo passwd -l joker
A opção -l (lock) bloqueia a senha.
- Tente alternar para o usuário joker:
su - joker
Será solicitada a senha. Digite a senha que você definiu para o joker anteriormente ("password123").
Você deverá ver uma mensagem de "falha de autenticação" (authentication failure). Isso significa que a conta foi bloqueada com sucesso.
- Agora, vamos desbloquear a conta:
sudo passwd -u joker
A opção -u (unlock) desbloqueia a senha.
- Tente alternar para o usuário joker novamente:
su - joker
Digite a senha quando solicitado. Desta vez, você deverá conseguir alternar para o usuário joker com sucesso.
Digite exit para retornar à sua conta de usuário original antes de prosseguir para a próxima etapa.
Excluindo um Usuário
Finalmente, vamos aprender como excluir um usuário. Vamos excluir o usuário "bob" que criamos anteriormente.
- Exclua o bob e seu diretório home:
sudo userdel -r bob
O comando userdel exclui contas de usuário. A opção -r remove o diretório home do usuário e sua caixa de correio (mail spool).
- Verifique se o usuário foi excluído:
sudo grep -w 'bob' /etc/passwd
sudo ls -ld /home/bob
Ambos os comandos não devem retornar resultados. Isso significa que o usuário e seu diretório home foram removidos com sucesso.
Resumo
Parabéns! Você concluiu o laboratório de Gerenciamento de Contas de Usuário no Linux. Você aprendeu como:
- Criar novas contas de usuário
- Definir senhas de usuário
- Modificar propriedades do usuário, como diretório home e shell padrão
- Adicionar usuários a grupos
- Bloquear e desbloquear contas de usuário
- Excluir contas de usuário
Você também foi introduzido a conceitos importantes do Linux, como o arquivo /etc/passwd, diretórios home, shells e grupos de usuários. Estas são habilidades fundamentais para a administração de sistemas Linux. Lembre-se: em cenários reais, siga sempre as políticas de segurança da sua organização ao gerenciar contas de usuário.



