Domine o Linux: Guia Completo de Gestão de Utilizadores e Grupos no Terminal

Criar utilizador, imagem com um grupo de utilizadores

No universo Linux, a capacidade de gerir utilizadores e grupos é mais do que uma simples tarefa administrativa; é um pilar essencial para a segurança, a organização e a eficiência de qualquer sistema, seja ele um servidor robusto a lidar com múltiplas aplicações ou o seu desktop pessoal. Sem um controlo adequado sobre quem acede a quê e como os recursos são partilhados, os riscos aumentam e a produtividade pode ser comprometida. Felizmente, a linha de comando oferece um poder e uma flexibilidade inigualáveis para esta gestão.

Neste guia completo, você não só aprenderá o fundamental, mas também dominará passo a passo como criar, gerir e remover utilizadores e grupos no Linux, utilizando a agilidade e o controlo preciso que só o terminal pode oferecer. Prepare-se para desbloquear um nível superior de administração do seu sistema!

Índice de conteúdo:

  1. Benefícios da Gestão de Utilizadores e Grupos
  2. Como Criar Utilizadores via Terminal
  3. Gerir Grupos: Criação e Associação de Utilizadores
  4. Remover Contas de Utilizador e Grupos
  5. Boas Práticas de Segurança e Gestão

Benefícios da Gestão de Utilizadores e Grupos

Criar contas de utilizador individuais e organizá-las em grupos é crucial para a segurança, organização e gestão eficiente de qualquer sistema Linux. Aqui estão alguns dos principais benefícios:

  • Segurança Reforçada: Cada utilizador possui a sua própria palavra-passe e permissões de acesso, protegendo o sistema contra acessos não autorizados e limitando o impacto de potenciais vulnerabilidades.
  • Organização Aprimorada: O controlo do acesso aos recursos do sistema é facilitado. Atribuindo permissões consoante as necessidades de cada utilizador ou grupo, garante-se que os utilizadores tenham acesso apenas aos recursos de que precisam (ficheiros, diretórios e aplicações).
  • Partilha de Recursos: Os grupos permitem que múltiplos utilizadores partilhem acesso a ficheiros, diretórios ou até recursos físicos como impressoras, sem a necessidade de atribuir permissões individualmente a cada um.
  • Personalização: Cada utilizador tem o seu próprio diretório home, permitindo personalizar o ambiente de trabalho de acordo com as suas preferências, sem afetar outros utilizadores.
  • Produtividade: Evita conflitos entre utilizadores e garante que cada um tenha o ambiente necessário para realizar as suas tarefas de forma eficiente, otimizando fluxos de trabalho colaborativos através de grupos.
  • Flexibilidade: Permite atribuir diferentes níveis de acesso aos recursos do sistema de forma granular e escalável.

Resumindo, no Linux, a gestão de utilizadores e a criação de grupos são formas poderosas de gerir o acesso aos recursos do sistema, ajudando a melhorar a segurança e a produtividade, organizar os utilizadores e personalizar o ambiente de cada um, permitindo uma maior flexibilidade e colaboração.


Como Criar Utilizadores via Terminal

Usar a linha de comando muitas vezes facilita algumas tarefas. Neste caso, apresentamos aqui a forma de criar um novo utilizador via linha de comando.

O Comando useradd

No Linux, a criação de utilizadores via linha de comando é feita principalmente por duas ferramentas: useradd e adduser. Ambas servem para o mesmo propósito, mas funcionam de maneiras ligeiramente diferentes dependendo da distribuição.

  • useradd: Este é o utilitário universal em todas as distribuições Linux (como Fedora, CentOS, RHEL, Ubuntu, Debian, etc.). É a ferramenta ideal para scripts de automação, pois é mais "direta" e menos interativa.
  • adduser: Em distribuições como Ubuntu e Debian, adduser é um script que age como um "invólucro" (wrapper) para useradd. Ele é mais interativo e guia o utilizador através de prompts para configurar a nova conta. No Fedora e sistemas baseados em RHEL, useradd é a ferramenta primária e mais comum para uso manual e em scripts.

Neste guia, vamos focar-nos no comando useradd, que é a ferramenta padrão e mais utilizada em sistemas Fedora Linux, onde foram realizados os nossos testes e exemplos. Ele oferece diversas opções para configurar a nova conta de forma detalhada:

  • -c: Adiciona um comentário à conta do utilizador, geralmente usado para o nome completo ou uma descrição (ex: "Administrador de Rede").
  • -m: Cria automaticamente o diretório home do utilizador, que é essencial para que este tenha o seu próprio ambiente de trabalho.
  • -d: Especifica o caminho completo para o diretório home do utilizador, caso não queira usar o padrão (`/home/nome_do_utilizador`).
  • -g: Define o grupo principal (primário) do utilizador. Por padrão, se esta opção não for usada, o useradd cria um grupo com o mesmo nome do utilizador e atribui-o como o grupo primário.
  • -s: Define o shell de login do utilizador (ex: `/bin/bash`, `/bin/zsh`, `/bin/nologin`).

Para mais informações e explorar todas as opções avançadas, consulte o manual do useradd: $ man useradd

Vamos agora criar um novo utilizador ao qual vamos chamar de "utilizador-2". No post anterior, tínhamos abordado a criação via Interface Gráfica do Utilizador (GUI) e chegamos a criar um utilizador de nome utilizador-1.

Com esta linha de comando, criamos o utilizador e depois definimos a palavra-passe:

Logo após a opção -c, colocam-se informações sobre o novo utilizador, que poderá ser o seu nome completo. Aqui, vamos colocar "Utilizador-2". Este é o nome que aparecerá no ecrã de login.

Após as opções -m -d, vamos colocar utilizador-2. Este é o nome que estará ligado ao diretório home do utilizador.

$ sudo useradd -c "Utilizador-2" -m -d /home/utilizador-2 utilizador-2

<Enter>

Acabámos de criar um novo utilizador.

Agora podemos definir uma palavra-passe para "utilizador-2". Assim que ele fizer login na sua conta, poderá alterá-la:

$ sudo passwd utilizador-2

Introduz a tua palavra-passe de administrador e, após isso, vai aparecer a seguinte mensagem:

Mudando a palavra-passe para o utilizador utilizador-2.

Digita a palavra-passe.

Nova palavra-passe:

Digita a confirmação da palavra-passe.

Redigite a nova palavra-passe:

Após a conclusão, aparece-nos uma mensagem assim:

passwd: todos os tokens de autenticações foram atualizados com sucesso.

Outro processo seria criar na mesma linha de comando o utilizador-2 e a palavra-passe. Como se pode ver aqui, a palavra-passe é 'novoUserCriado' e está em texto simples. Este processo poderá não ser o mais seguro, pelo que se aconselha o primeiro processo (definir a palavra-passe separadamente). Também aqui, ao utilizador-2 é fornecida a sua palavra-passe pelo administrador do sistema e, logo após o primeiro login, ele faz a alteração da mesma:

$ sudo useradd -c "Utilizador-2" -m -d /home/utilizador-2 utilizador-2 -p $(mkpasswd novoUserCriado)

Acabámos de criar uma conta de utilizador usando a linha de comando.

Para conferir:

$ id utilizador-2
ip utilizador-2

Podemos também ver quantos utilizadores temos no sistema:

$ cat /etc/passwd
cat etc passwd

Pela imagem, podemos ver que temos três utilizadores:

  1. administrador
  2. utilizador-1
  3. utilizador-2

Quando o utilizador-2 fizer login com a palavra-passe cedida pelo administrador do sistema, poderá mudá-la para uma outra que lhe possa conferir maior segurança e privacidade.


Gerir Grupos: Criação e Associação de Utilizadores

Imagem criação de grupos de utilizadores

No Linux, a criação de utilizadores individuais é apenas o primeiro passo para uma gestão de acessos eficaz. A verdadeira flexibilidade e poder vêm com a organização desses utilizadores em grupos. Um grupo é uma coleção de utilizadores que partilham um conjunto de permissões de acesso a ficheiros, diretórios ou outros recursos do sistema.

Os grupos são criados no Linux para facilitar a gestão de permissões para utilizadores e ficheiros. Cada utilizador pertence a, pelo menos, um grupo — que é criado no preciso momento em que um novo utilizador é adicionado ao sistema. Além disso, os ficheiros também podem pertencer a grupos. Este tipo de organização permite controlar quem tem acesso a ficheiros e diretórios, independentemente das permissões individuais do utilizador.

Por exemplo, podemos criar um grupo para os programadores web, outro grupo para designers e um grupo para testes.

Os grupos podem também ser usados para controlar o acesso a recursos físicos, como impressoras. Por exemplo, você pode criar um grupo para todos os utilizadores que têm permissão para imprimir documentos numa determinada impressora. Neste caso, a permissão para imprimir nessa impressora seria dada ao grupo, sem ter que atribuir permissão individual a cada utilizador.

Os grupos são muito importantes para gerir permissões no Linux, pois simplificam a gestão de acesso a ficheiros, diretórios e recursos físicos.

Alguns dos benefícios de usar grupos no Linux:

  • Eficiência: Os grupos podem ajudá-lo a gerir permissões com mais eficiência, permitindo que controle o acesso a vários ficheiros e diretórios com uma única configuração de permissão.
  • Flexibilidade: Os grupos ajudam-no a ser mais flexível na forma como gere as permissões, permitindo que adicione ou remova facilmente utilizadores dos grupos.
  • Segurança: Os grupos podem ajudá-lo a melhorar a segurança, dificultando o acesso de utilizadores não autorizados a ficheiros e diretórios.

Criar um Novo Grupo com groupadd

Para criar um grupo, usamos o comando groupadd. Para mais informações sobre o comando, consulte o manual: $ man groupadd

Vamos considerar uma empresa que tem como objetivo produzir energia. Esta empresa tem os seguintes setores: Administração, Contabilidade, Manutenção, Aprovisionamento, Produção e Distribuição. Para facilitar a comunicação e informação nos diversos setores, criam-se grupos para cada setor. A esses grupos serão dadas as permissões necessárias para que possam levar a cabo as suas tarefas na empresa.

Para exemplificar, vamos criar um grupo para o setor de Manutenção, ao qual vamos dar o nome de manutencao.

$ sudo groupadd manutencao
Criando o grupo manutencao.

Para verificarmos os grupos existentes no sistema, ou se o grupo que acabamos de criar já existe:

$ cat /etc/group
Verificando os grupos existentes no sistema

Para verificarmos somente o grupo recentemente criado:

$ grep manutencao /etc/group
Verificação do grupo recentemente criado, de forma individual usando grep

Como se pode ver pela última entrada na imagem acima, o grupo manutencao foi criado.

Adicionar Utilizadores a Grupos Existentes com usermod

Após a criação de um utilizador, é comum (e muitas vezes necessário) adicioná-lo a grupos específicos para conceder-lhe privilégios adicionais ou acesso a recursos partilhados. No Linux, cada utilizador tem um grupo primário (geralmente com o mesmo nome do utilizador, criado por padrão) e pode pertencer a vários grupos suplementares.

Para adicionar um utilizador a um grupo existente, usamos o comando usermod -aG (append to group):

$ sudo usermod -aG nome_do_grupo nome_do_utilizador

Por exemplo, para dar privilégios administrativos ao 'utilizador-2', adicionando-o ao grupo 'sudo' (ou 'wheel', dependendo da sua distribuição):

$ sudo usermod -aG wheel utilizador-2

Nota Importante: Para que as novas associações a grupos tenham efeito, o utilizador recém adicionado ao grupo precisa de terminar a sessão e iniciar novamente.

Verificar os Grupos de um Utilizador

Para ver a que grupos um utilizador pertence, pode usar o comando groups ou id:

$ groups utilizador-2 $ id utilizador-2

Remover Contas de Utilizador e Grupos

Remover Utilizadores com userdel

Quando uma conta de utilizador já não é necessária, é crucial removê-la corretamente do sistema. O comando para isso é userdel (user delete). Para mais informações, consulte o manual: $ man userdel

Para remover apenas a conta de utilizador (mantendo o diretório home e a caixa de correio):

$ sudo userdel nome_do_utilizador

Para remover o utilizador e o seu diretório home e a caixa de correio (que é o mais comum), usamos a opção -r (remove home directory and mail spool):

# userdel -r utilizador-2

Cuidado: Remover uma conta de utilizador com -r é irreversível. Certifique-se de que fez um backup de quaisquer dados importantes antes de executar este comando.

Remover Grupos com groupdel

Assim como os utilizadores, os grupos também podem ser removidos quando deixam de ser necessários.

Para remover um grupo, usamos o comando groupdel (group delete). Como experimento, vamos remover o grupo manutencao que criámos anteriormente:

# groupdel manutencao
Deletando o grupo manutenção recentemente criado, comando groupdel.

Verificando a remoção:

Comprovando a remoção do grupo manutenção recentemente criado, comando 'grep manutencao /etc/group'.

A imagem mostra-nos que o grupo foi removido.

Nota: Não é possível remover um grupo se este for o grupo principal de qualquer utilizador ainda existente no sistema. Se for o caso, terá de alterar o grupo principal do utilizador antes de remover o grupo.


Boas Práticas de Segurança e Gestão

A segurança é primordial na administração de qualquer sistema. Ao gerir utilizadores e grupos, tenha sempre em mente as seguintes boas práticas:

  • Palavras-Passe Fortes: Incentive e imponha a utilização de palavras-passe complexas e únicas para cada utilizador. Uma palavra-passe fraca é uma porta aberta para o seu sistema.
  • Princípio do Mínimo Privilégio: Conceda aos utilizadores apenas as permissões e acessos estritamente necessários para as suas funções. Evite dar privilégios de administrador ('root') a utilizadores comuns, a menos que seja absolutamente essencial e com justificação clara.
  • Uso de sudo: Em vez de partilhar a palavra-passe da conta 'root', adicione utilizadores de confiança a um grupo como 'sudo' ou 'wheel'. Isso permite que executem comandos administrativos quando necessário, mas exigindo a sua própria palavra-passe, mantendo a conta 'root' mais segura.
  • Auditoria Regular: Verifique periodicamente as contas de utilizador e as associações a grupos para garantir que todas as permissões são ainda necessárias e apropriadas. Remova contas e grupos que já não são usados.
  • Bloqueio de Contas: Em caso de férias prolongadas, saída de um colaborador ou suspeita de atividade incomum, pode bloquear temporariamente uma conta de utilizador com comandos como sudo passwd -l nome_do_utilizador ou sudo usermod -L nome_do_utilizador.

Neste guia completo, você aprendeu a criar, gerir e remover utilizadores e grupos no Linux via terminal. Dominar o useradd, groupadd e outros comandos relacionados oferece maior controlo e flexibilidade na administração do seu sistema. Lembre-se de consultar as páginas de manual (man) para obter informações detalhadas sobre cada comando e as suas opções. Agora é hora de praticar e aprimorar as suas habilidades no terminal!

Voltar para o início da página

Teste seus conhecimentos!

Curioso para saber o quanto você absorveu sobre gestão de utilizadores e grupos no terminal? Clique no botão abaixo para fazer um rápido quiz e desafie sua compreensão:

Comentários

Mensagens populares deste blogue

Dominando o Comando history no Linux

Aliases no Linux: Domine a Linha de Comando com Praticidade e Eficiência

Problemas com o Nome de Usuário? Aprenda a Renomeá-lo no Linux