Strawberry Ice Cream
Linux

5111 – Ex01

Objetivos

  • Criação de configurações de partilhas de ficheiros em rede utilizando o SAMBA
  • Criação de utilizadores e grupos para SAMBA
  • Autenticação no SAMBA com contas UNIX e base de dados local (user level security)

Utilizando o SAMBA as partilhas de rede para uma empresa com os seguintes nomes:

  • CONTABILIDADE
  • LOGÍSTICA
  • COMERCIAL
  • IT
  • ADMINISTRAÇÃO

Configure as permissões de acesso de acordo com a tabela:

Tabela de permissões
Tabela de permissões

As pastas partilhadas devem sempre ficar em /mnt/samba/<partilha>.

Deverão ser criados grupos para cada partilha, por exemplo: a partilha CONTABILIDADE pertence ao grupo contabilidade, e os users que tem acesso à essas partilhas deverão fazer parte dos seus respectivos grupos, por exemplo: user Lucas faz parte dos grupos comercial e it.

Vamos primeiro criar os users necessários, o comando usado é o adduser, executado como root.

Adduser
Adduser

Repita o processo para o resto dos users.

Users criados
Users criados

Agora vamos criar os grupos, para isso o comando groupadd, executado como root, é usado.

Criandos novos grupos
Criandos novos grupos

 

Grupos criados
Grupos criados

Com os users e grupos já criados, vamos tratar de criar as pastas das partilhas, essas pastas ficarão dentro de /mnt/samba/, depois de criadas é preciso mudar o grupo a pertencem para o pertencerem ao grupo do mesmo nome, para isso o comando chown é utilizado, como root, depois altere as permissões de leitura e escrita de maneira a que os grupos tenham permissões de escrita nas pastas, isso pode ser feito com o comando chmod g=rwx <group>.

chown
chown

Com as pastas já pertencendo aos seus respectivos grupos, vamos agora adicionar os users aos grupos necessários para ter acesso às partilhas, isso é feito através do comando usermod -aG, onde o a significa append e o G seleciona o grupo, nesse caso ele vai fazer o append do user ao grupo, por exemplo, para adicionar o user lucas ao grupo it o comando seria usermod -aG it lucas, o username é sempre o último argumento, também é possível adicionar um user a vários grupos simultaneamente dessa maneira: usermod -aG comercial,it lucas, esse comando irá adicionar o user lucas aos grupos comercial e it.

usermod
usermod

Na imagem acima podemos ver os users sendo adicionados aos grupos e o arquivo /etc/groups mostrando os grupos com os seus novos membros.

Agora iremos criar os users que o Samba irá utilizar para fazer a autenticação, o comando é smbpasswd -a <username>

smbpasswd
smbpasswd

Repita os passos para o resto dos users, depois que terminar de criar todos os users vamos criar as shares, para isso abra como root o arquivo /etc/samba/smb.conf e vá para a última linha, lá iremos criar as novas shares.

Partilha Contabilidade
Partilha Contabilidade

Vamos fazer um breakdown dessa configuração.

  1. “[CONTABILIDADE]” indica o nome da partilha, como ela irá aparecer na rede.
  2. “comment = Contabilidade” é exatamente isso, um comentário sobre a partilha, esse comentário é apenas mostrado nos clientes que pedem essa informação.
  3. “path = /mnt/samba/contabilidade” indica a localização, no servidor, da pasta a ser partilhada
  4. “browseable = yes” serve para fazer com que a partilha apareça na lista de partilhas disponíveis, se colocar no ela não irá aparecer na lista
  5. “read only = yes” serve para fazer com que todos os users que tenham acesso a essa partilha tenham apenas permissões de leitura, e não de escrita
  6. “guest ok = no” faz com que apenas users autenticados tenham acesso
  7. “valid users = @contabilidade” indica quais users ou grupos tem acesso à partilha, nesse caso são todos os users do grupo contabilidade
  8. “write list = marta, filipa” dá permissões de escrita a users ou grupos específicos, esse parâmetro tem precedência sobre a opção “read only”

Seguindo esse padrão, crie o resto das partilhas, colocando na write list os users que devam ter permissões de escrita nessa partilha, tenha atenção nos casos das partilhas COMERCIAL e ADMINISTRACAO, nessas duas partilhas, todos os membros tem permissões de leitura e escrita, nesse caso é possível configurar a opção read only como no e omitir a configuração write list, ou então mantenha read only como yes e em write list adicione o grupo inteiro.

Partilhas
Partilhas

E aqui podemos ver que todas as partilhas estão disponíveis.

Partilhas ativas
Partilhas ativas

Agora vamos testar as partilhas em um cliente Windows 10.

User Lucas acessando partilha IT
User Lucas acessando partilha IT

 

User Filipa acessando partilha IT
User Filipa acessando partilha IT

 

Pasta da partilha IT no servidor
Pasta da partilha IT no servidor

Como podemos ver, o user lucas tem permissões de leitura e escrita na partilha IT, enquanto o user filipa tem apenas permissões de leitura.

User pedro acessando partilha LOGISTICA
User pedro acessando partilha LOGISTICA

 

User marta acessando partilha LOGISTICA
User marta acessando partilha LOGISTICA

 

Pasta da partilha LOGISTICA no servidor
Pasta da partilha LOGISTICA no servidor

 

User lucas acessando partilha IT em cliente Linux
User lucas acessando partilha IT em cliente Linux

 

User lucas acessando partilha IT em cliente Linux
User lucas acessando partilha IT em cliente Linux

 

User filipa acessando partilha IT em cliente Linux
User filipa acessando partilha IT em cliente Linux

 

User filipa acessando partilha IT em cliente Linux
User filipa acessando partilha IT em cliente Linux

 

User aristides acessando partilha IT em cliente Linux
User aristides acessando partilha IT em cliente Linux

 

User aristides acessando partilha IT em cliente Linux
User aristides acessando partilha IT em cliente Linux

 

User marta acessando partilha LOGISTICA em cliente Linux
User marta acessando partilha LOGISTICA em cliente Linux

 

User marta acessando partilha LOGISTICA em cliente Linux
User marta acessando partilha LOGISTICA em cliente Linux

 

User pedro acessando partilha LOGISTICA em cliente Linux
User pedro acessando partilha LOGISTICA em cliente Linux

 

User pedro acessando partilha LOGISTICA em cliente Linux
User pedro acessando partilha LOGISTICA em cliente Linux

Como podemos ver, as partilhas podem ser acessadas sem problemas pelos users, com permissões de leitura e escrita de acordo com o que foi configurado no servidor.

E com o comando smbstatus podemos ver as ligações ativas ao serviço.

smbstatus
smbstatus

E abaixo podemos ver uma parte do tráfego de uma ligação ao servidor Samba através da porta 445.

tcpdump
tcpdump

Leave a Reply

Your email address will not be published. Required fields are marked *