SingularCode

SOLIN-04

4. Administração de Usuários e Grupos

Atualizado em: 27 de fevereiro de 2024

 

Por: Nelson H. Koshoji

4.1. Conceitos

A administração de usuários e grupos no Lubuntu, assim como em outros sistemas operacionais baseados em Linux, é uma tarefa fundamental para a gestão de permissões e acessos dentro do sistema. Essa administração permite que o administrador do sistema controle quais usuários têm acesso a quais recursos, arquivos e diretórios, além de definir quais operações cada usuário ou grupo de usuários pode realizar.

 

Arquivos de Usuários

No Lubuntu, assim como em outros sistemas Linux, os usuários são cadastrados no arquivo /etc/passwd. Este arquivo contém uma linha para cada usuário, com várias informações separadas por dois-pontos, incluindo o nome de usuário, o ID do usuário (UID), o ID do grupo (GID), o nome completo do usuário (GECOS), o diretório home e o shell de login.

 

Comandos para cadastro de Usuários

Para cadastrar um novo usuário, o comando mais utilizado é o useradd, seguido pelo nome do usuário que se deseja criar. Por exemplo:

sudo useradd -m -s /bin/bash nome_do_usuario

Este comando cria um novo usuário com um diretório home (-m) e define o shell de login como bash (-s /bin/bash). Para definir uma senha para o novo usuário, utiliza-se o comando passwd, seguido pelo nome do usuário:

sudo passwd nome_do_usuario

 

 

Arquivo de Grupos

Os grupos são cadastrados no arquivo /etc/group. Este arquivo, assim como o /etc/passwd, contém uma linha para cada grupo, com informações como o nome do grupo, o ID do grupo (GID) e os membros do grupo.

 

Comandos para Cadastro de Grupos

Para cadastrar um novo grupo, o comando utilizado é o groupadd, seguido pelo nome do grupo que se deseja criar:

sudo groupadd nome_do_grupo

 

Para adicionar um usuário a um grupo existente, utiliza-se o comando usermod -aG, seguido pelo nome do grupo e pelo nome do usuário:

sudo usermod -aG nome_do_grupo nome_do_usuario

Este comando adiciona o usuário ao grupo sem remover o usuário de outros grupos aos quais ele já pertence.

Para verificar se os usuários foram adicionados corretamente aos grupos, podemos usar o comando groups seguido pelo nome do usuário:

groups nome_do_usuário

 

Além desses dois arquivos principais, a senha real (em uma forma criptografada) dos usuários e outras informações de segurança são armazenadas no arquivo /etc/shadow, /etc/shadow. Este arquivo é acessível apenas pelo usuário “root”., ou usar o comando sudo.

 

4.2. Atividade-1

Vamos criar um cenário em que estamos configurando um sistema Lubuntu para uma empresa fictícia chamada “Inovações Tecnológicas”. A empresa possui três departamentos principais: Desenvolvimento, Marketing e RH (Recursos Humanos). Nossa tarefa é cadastrar usuários no sistema para representar funcionários de cada departamento e, em seguida, criar grupos correspondentes a esses departamentos. Por fim, vamos adicionar os usuários aos grupos apropriados. Cadastre três usuários,e logo em seguida, um usuário para cada departamento.  Por exemplo:

  1. Ana para o departamento de Desenvolvimento (Dev).
  2. Bruno para o departamento de Marketing (Mkt).
  3. Carla para o departamento de RH (RH)

 

4.3. Gerenciamento de Permissões

Os diretórios e os arquivos do Linux, são marcados com permissões para seu proprietário, para um grupo ou para outros usuários que utilizam o sistema.  E, tais permissões podem ser classificadas por letra, da seguinte forma:

  • letra [r] de read – leitura
  • letra [w] de write – escrita/gravação
  • letra [x] de execute – execução

O conjunto das três letras pode atribuir os seguintes status de permissão:

  • Usuário pode ler, escrever e executar um determinado arquivo quando possui o seguinte atributo: [rwx]. Neste caso ele possui controle total dos arquivos. 
  • Usuário pode ler e executar um determinado arquivo, mas não pode apagá-lo ou escrever sobre ele, quando possui o seguinte atributo: [r-x]. 
  • Usuário pode ler e escrever, mas não pode executar o arquivo, quando possui o seguinte atributo: [rw-].
  • Usuário não possui acesso sobre um determinado arquivo, quando possui o seguinte atributo: [—].

Comando para alterar a permissão de arquivos e diretórios

Comando chmod:
Exemplo:

chmod 750 /home/user/arq01.txt

chmod 644 /home/user/arq01.txt

ou

chmod u=rw,g=r,o=r /home/user/arq01.txt

Comando para alterar os Donos e Usuários de um arquivo ou diretório

Comando chown:

Exemplo:

chown user1 /home/user/arq01.txt

 

Comando para Para alterar o grupo do arquivo ou diretório.

Comando chgrp:

Exemplo:

chgrp grupo1 /home/user/arq01.txt

 

4.2. Atividade-2

Atividade

Imagine que você trabalha em uma empresa e é responsável por manter o sistema operacional Linux em funcionamento (Administrador do Sistema). Recentemente, a empresa expandiu sua equipe e agora conta com mais usuários que precisam acessar o sistema. Foram contratadas 4 pessoas, sendo 2 pessoas (Joao e Maria) para o departamento de engenharia, 2 pessoas (Pedro e Jose) para o departamento de tecnologia

1. Crie os usuários, os grupos e coloque os usuários nos grupos.

Criando Usuários:

sudo useradd -m -s /bin/bash Joao
sudo useradd -m -s /bin/bash Maria
sudo useradd -m -s /bin/bash Pedro
sudo useradd -m -s /bin/bash Jose

Adicionando Senha:

sudo passwd Joao
sudo passwd Maria
sudo passwd Pedro
sudo passwd Jose
 

Criando Grupo:

sudo groupadd engenharia

sudo groupadd tecnologia

 

Adicionando Usuário aos seus repectivos Grupos:

sudo usermod -aG engenharia Joao

sudo usermod -aG engenharia Maria

sudo usermod -aG tecnologia Pedro

sudo usermod -aG tecnologia Jose

 

 

 

2. Crie duas pastas dentro do diretório /home (tecnologia e engenharia).

cd / home
sudo mkdir engenharia
sudo mkdir tecnologia
 
3. Altere o nome do grupo da pasta engenharia para ‘engenharia’ e do grupo tecnologia para ‘tecnologia’:
sudo chgrp tecnologia tecnologia
sudo chgrp engenharia engenharia
 
4. Altere o nome do usuário para o seu user com privilégios: no meu caso vou mudar para ‘nelson’
sudo chown nelson engenharia
sudo chown nelson tecnologia
 
5. Altere a permissão para usuário e Grupo Permissão total e outros usuários nenhuma permissão:
sudo chmod 770 engenharia
sudo chmod 770 tecnologia
 
Fazendo o teste de permissão:

 

6. Logar com o usuário Joao

su Joao

e acessar a pasta engenharia, Qual foi o resultado?

 

7. Logar com o usuário Pedro

su Pedro

e acessar a pasta engenharia, Qual foi o resultado?