Skip to content

Administrando grupos de arquivos com ‘gpasswd’

27 de maio de 2021

Cada arquivo e pasta dentro do Linux envolve permissões de usuário, grupo e proprietário. Ao controlar quem tem acesso a um grupo, você pode controlar o que acontece com arquivos e pastas em seu sistema sem ter que definir permissões para cada usuário. Este procedimento funciona para todas as distribuições Linux que executam qualquer ambiente de desktop e shell. Os procedimentos descritos abaixo foram testados usando Ubuntu 19.10 com o ambiente de desktop Budgie e Zsh, rodando em uma máquina virtual Hyper-V no Windows 10.

Como adicionar um usuário a um grupo

Use o comando sudo addgroup [groupname] para criar um grupo, se ainda não tiver criado um. O comando para modificar a senha de um grupo existente, gpasswd, assume a seguinte forma geral: gpasswd [option] grupo

As opções disponíveis para este comando incluem:

  • -uma, –adicionar: Adiciona um usuário ao grupo nomeado.
  • -d, –excluir: Remove um usuário do grupo nomeado.
  • -h: Exibe um resumo da ajuda e depois sai.
  • -Q, –raiz: Aplique as alterações no diretório raiz do grupo e use os arquivos de configuração dele.
  • -r, –remove-password: Remova a senha do grupo. Apenas as pessoas que já foram adicionadas ao grupo podem ativá-lo para a sessão usando o newgrp comando.
  • -R, –restringir: Restrinja o acesso ao grupo e defina uma senha de grupo padrão de !. As pessoas devem fornecer a senha para entrar no grupo usando newgrp.
  • -UMA, –administradores: Define a lista de pessoas que têm autoridade para administrar usuários (adicionar / excluir) ou alterar a senha do grupo.
  • -M, –membros: Define a lista de membros do grupo.

O método usual de modificar um grupo envolve o groupmod comando.

Como funciona

O gpasswd O comando serve como um front end baseado em shell para administrar os arquivos / etc / group e / etc / gshadow. Além de abreviar os processos de atribuição de usuários e grupos (o que normalmente ocorre com o usermod comando), gpasswd define uma senha opcional em um grupo. Linux inclui um newgrp comando pelo qual uma conta de usuário comum pode obter acesso a diferentes grupos de usuários ou alterar o ID do grupo ativo durante uma determinada sessão de login. Para evitar um possível ingresso impróprio no grupo, a senha do grupo é exigida sempre que alguém tenta ingressar no grupo por meio do newgrp comando.

Por que você deve evitar ‘gpasswd’

Era uma vez, a ideia de uma senha de grupo provavelmente fazia sentido; a prática espelhava usuários individuais acessando suas contas com uma senha. No entanto, embora esse recurso permaneça embutido no Linux, é preferível evitar o uso de senhas de grupo – e usar gpasswd para modificar o acesso em nível de grupo. Aqui está o porquê:

  • Segurança: Geralmente, é adequado adicionar usuários individuais a grupos secundários por um administrador de sistema, do que permitir que usuários individuais selecionem e escolham grupos individualmente. Afinal, uma senha em nível de grupo é tão segura quanto a pessoa que a conhece e vaza publicamente, o que prejudica o valor de segurança da senha em primeiro lugar.
  • ACLs: A ampliação do uso de Listas de Controle de Acesso supera algumas das peculiaridades do modelo de segurança de proprietário / grupo / usuário.
  • Sudo: Em alguns casos, especialmente com casos de uso mais raros (por exemplo, acessar certas informações confidenciais), adicionar uma função especial de sudo é suficiente, além de ser retroativamente auditável.