[Cruzeiro] GSO III - Atividade Usuários, grupos e compartilhamento de arquivos no Linux
Usuários, grupos e compartilhamento de arquivos no Linux
Você vai montar o servidor de arquivos de uma pequena empresa: contas de usuário, grupos por departamento, pastas com as permissões certas e compartilhamento na rede com Samba.
elaine@gso3-seunome:~$ smbclient -L //localhost -U ana
Password for [WORKGROUP\ana]:
Sharename Type Comment
--------- ---- -------
financeiro Disk Pasta do Financeiro
rh Disk Pasta do RH
ti Disk Pasta da TI
publico Disk Pasta publica
IPC$ IPC IPC Service
Cenário
A Distribuidora Vale do Paraíba guarda planilhas e documentos em pen drives que circulam entre os setores. Você foi contratado para criar um servidor Linux onde cada departamento tem sua pasta, com acesso controlado por grupos, e todos acessam pela rede.
Colaboradores
| Usuário | Nome completo | Setor | Grupos suplementares |
|---|---|---|---|
| ana | Ana Souza | Financeiro | financeiro, colaboradores |
| bruno | Bruno Lima | Financeiro | financeiro, colaboradores |
| carla | Carla Dias | RH | rh, colaboradores |
| diego | Diego Alves | RH | rh, colaboradores |
| elaine | Elaine Rocha | TI (administradora) | ti, colaboradores, sudo |
| estagiario | Estagiario Temporario | — | colaboradores |
Senha de laboratório para todas as contas: Gso3@2026
Regras das pastas
/srv/empresa/financeiro,/srv/empresa/rhe/srv/empresa/ti: somente os membros do grupo do setor leem e gravam. Outros usuários não entram./srv/empresa/publico: todos do grupocolaboradoresleem e gravam, mas ninguém pode apagar arquivo criado por outra pessoa.- Todo arquivo criado dentro de uma pasta deve pertencer automaticamente ao grupo daquela pasta.
- Pela rede (Samba), o estagiário apenas lê a pasta pública.
Antes de começar
Personalize o nome da máquina com o seu primeiro nome. Ele aparece no prompt e deve estar visível em todos os prints:
sudo hostnamectl set-hostname gso3-seunome # feche e abra o terminal novamente
Referência rápida de comandos
A sintaxe está aqui. Montar o comando certo para cada tarefa é com você.
| Comando | Para que serve |
|---|---|
| groupadd grupo | Cria um grupo |
| useradd -m -s /bin/bash -c "Nome" -G g1,g2 usuario | Cria usuário com diretório pessoal, shell, nome completo e grupos suplementares |
| passwd usuario | Define a senha local |
| usermod -aG grupo usuario | Adiciona o usuário a um grupo mantendo os demais |
| gpasswd -d usuario grupo | Remove o usuário de um grupo |
| usermod -L usuario | Bloqueia a senha da conta |
| chage -E AAAA-MM-DD usuario | Define a data de expiração da conta (chage -l consulta) |
| id usuario / getent group grupo | Mostra os grupos de um usuário / os membros de um grupo |
| chown dono:grupo caminho | Altera dono e grupo |
| chmod NNNN caminho | Permissões numéricas; o 1º dígito soma SUID (4), SGID (2) e sticky bit (1) |
| sudo -u usuario comando | Executa um comando como outro usuário (para testes) |
| smbpasswd -a usuario / -d usuario | Cadastra no Samba / desativa no Samba |
| pdbedit -L / pdbedit -v usuario | Lista usuários do Samba / detalhes de um usuário |
| testparm -s | Verifica a sintaxe do smb.conf |
| smbclient //host/pasta -U usuario -c 'ls' | Acessa um compartilhamento pelo terminal |
Parte 1 — Usuários e grupos
2,0 pts1.1Criar os grupos
Crie os grupos financeiro, rh, ti e colaboradores.
1.2Criar os usuários
Crie os seis usuários da tabela com um único comando por usuário: diretório pessoal, shell /bin/bash, nome completo no campo de comentário e todos os grupos suplementares.
1.3Definir senhas
Defina a senha de laboratório para as seis contas.
1.4Conferir
Mostre os membros dos quatro grupos em um só comando: getent group financeiro rh ti colaboradores E1
Mostre os grupos da Elaine e as linhas de três contas no /etc/passwd: id elaine e grep -E '^(ana|elaine|estagiario):' /etc/passwd E2
Parte 2 — Pastas e permissões
2,0 pts2.1Criar a estrutura
Crie /srv/empresa com as subpastas financeiro, rh, ti e publico.
2.2Dono e grupo
Todas as pastas pertencem ao usuário root. O grupo de cada uma é o do setor; o da publico é colaboradores.
2.3Permissões
Descubra e aplique a permissão numérica de 4 dígitos que atende às regras do cenário:
- Pastas dos setores: dono e grupo com acesso total, outros sem nada, e herança do grupo.
- Pasta pública: o mesmo, mais proteção para que ninguém apague arquivo alheio.
Mostre o resultado com ls -l /srv/empresa E3
2.4Testar as permissões localmente
Use sudo -u para agir como cada usuário:
- A Ana cria
balanco.txtemfinanceiro. Mostre comls -lque o arquivo ficou com o grupofinanceiro. E4 - A Carla tenta listar
financeiro. Deve receber permissão negada. E5 - A Ana cria
aviso_ana.txtempublicoe o Bruno tenta apagá-lo comrm -f. Deve receber operação não permitida. E6
Parte 3 — Compartilhamento com Samba
3,0 pts3.1Instalar e fazer backup da configuração
sudo apt update sudo apt install -y samba smbclient sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
3.2Criar os compartilhamentos
Abra sudo nano /etc/samba/smb.conf e acrescente no final. O compartilhamento do financeiro está pronto como modelo:
[financeiro] comment = Pasta do Financeiro path = /srv/empresa/financeiro valid users = @financeiro read only = no browseable = yes force group = financeiro create mask = 0660 directory mask = 2770
Escreva você mesmo os blocos [rh], [ti] e [publico]. Na pasta pública, o estagiário só pode ler pela rede — pesquise a diretiva read list.
3.3Validar e reiniciar
Confira a sintaxe com testparm -s, reinicie o serviço smbd e verifique se ele está ativo.
3.4Cadastrar os usuários no Samba
O Samba tem uma base de senhas própria. Cadastre as seis contas com smbpasswd -a (mesma senha de laboratório) e liste-as com sudo pdbedit -L E7
3.5Testar pela rede
- Liste os compartilhamentos como Ana:
smbclient -L //localhost -U anaE8 - Ana envia um arquivo para o financeiro e lista a pasta:
smbclient //localhost/financeiro -U ana -c 'put /etc/hostname teste_smb.txt; ls'
Depois, no servidor, mostre comls -l /srv/empresa/financeiroo dono e o grupo do arquivo. E9 - Carla tenta acessar o financeiro com
-c 'ls'. Deve ser negado. E10 - O estagiário acessa
publico, lista a pasta e tenta enviar um arquivo. A listagem funciona; o envio é negado. E11
ip -br a, coloque a placa de rede em modo bridge e acesse \\IP-DA-VM\publico pelo Explorador de Arquivos do Windows.Parte 4 — Administração do dia a dia
1,5 pt4.1Transferência de setor
O Bruno foi transferido do Financeiro para o RH. Tire-o do grupo financeiro e coloque-o no rh sem que ele perca o grupo colaboradores. Mostre id bruno E12
4.2Desligamento
O Diego saiu da empresa. Os arquivos dele precisam ser preservados para auditoria, então a conta não deve ser apagada. Bloqueie-a no Linux e desative-a no Samba. Mostre sudo passwd -S diego e sudo pdbedit -v diego | grep -i flags E13
4.3Conta temporária
O contrato do estagiário termina em 18/12/2026. Configure a expiração da conta para essa data e mostre sudo chage -l estagiario E14
Parte 5 — Questões
1,5 ptResponda com suas palavras (0,3 cada):
- Na tarefa 4.1, por que usar
usermod -aGe não apenasusermod -G? O que aconteceria com o Bruno? - O que o SGID faz quando aplicado a um diretório, e por que ele é importante nas pastas dos setores?
- Na E3, a pasta
publicoaparece com umTmaiúsculo no final das permissões. O que ele indica e por que é maiúsculo? - Os usuários já tinham senha no Linux. Por que foi necessário usar
smbpasswd -a? - O estagiário pertence ao grupo
colaboradores, que tem permissão de escrita empublico, mas não conseguiu gravar pela rede. Explique por quê.
Checklist de entrega
Como entregar
Monte um único PDF chamado GSO3_Usuarios_SeuNome.pdf contendo:
- Capa com nome completo, turma e data.
- Prints E1 a E14, numerados, com o prompt
gso3-seunomevisível em cada um. - Respostas das questões 1 a 5, escritas por você.
Prof. Elton Alex Silva — ETEC Cachoeira Paulista, Classe Descentralizada de Piquete — Caderno de TI
Comentários
Postar um comentário
Ficou com alguma dúvida? Quer compartilhar sua experiência? Tem uma sugestão de
melhoria? Seu comentário é muito importante!