(Parte 3) Configurando Samba (compartilhamento de arquivos) no Ubuntu Server

Seria muito simples configurar o Samba para o uso doméstico, então irei simular um ambiente um pouco maior onde teremos 2 grupos de usuários (compras e estoque), dentro de cada grupo teremos um usuário, mas nada impede de existirem vários usuários por grupo ou até mais grupos. Será criado uma pasta para cada grupo no diretório /home onde só os usuários do grupo tem acesso, um pasta pública no diretório /home onde todos os grupos terão acesso, além disso para cada usuário com conta no servidor o linux cria uma pasta no diretório /home onde só ele tem acesso.
Criando e configurando permissões Usuários e Grupos
1 – Vamos criar os grupos (compras e estoque):
1 2 |
# addgroup compras # addgroup estoque |
2 – Criar os usuários e configurar as senhas:
1 2 |
# adduser user1 # adduser user2 |
3 – Adicionar os usuários aos devidos grupos:
1 2 |
# adduser user1 compras # adduser user2 estoque |
4 – Criar as devidas pastas no diretório /home:
1 2 3 |
# mkdir /home/compras # mkdir /home/estoque # mkdir /home/publica |
5 – Alterar o grupo proprietário das pastas:
1 2 |
# chgrp compras /home/compras # chgrp estoque /home/estoque |
6 – Permissões para as pastas:
1 2 3 |
# chmod 777 -R /home/publica # chmod 770 -R /home/compras # chmod 770 -R /home/estoque |
Instalando e configurando Samba
7 -Vamos instalar o samba no servidor com o seguinte comando:
1 |
# apt-get install samba |
8 – Cadastrar os usuários e suas senhas individualmente no samba, digite e confirme a senha:
1 2 |
# smbpasswd -a user1 # smbpasswd -a user2 |
9 – Utilizando o editor de textos vi vamos editar o arquivo /etc/samba/smb.conf:
1 |
# vi /etc/samba/smb.conf |
1 |
server string "Servidor" |
1 |
security = user |
1 2 3 4 5 6 |
[homes] //linha 247 comment = Home Directories //linha 248 browseable = no //linha 249 create mask = 0700 //linha 257 directory mask = 0700 //linha 261 valid users = %S //linha 269 |
1 |
writable = yes |
– No final do arquivo vamos adicionar as linhas com as configurações dos nossos compartilhamentos:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
[publica] comment = Pasta Publica path = /home/publica writable = yes browseable = yes create mode = 0777 directory mode = 0777 [compras] comment = Pasta Compras path = /home/compras writable = yes browseable = yes create mode = 0770 directory mode = 0770 valid users = @compras [estoque] comment = Pasta Estoque path = /home/estoque writable = yes browseable = yes create mode = 0770 directory mode = 0770 valid users = @estoque |
[nome_do_compartilhamento]
commnet => Apenas um comentário para o compartilhamento
path => Caminho para o compartilhamento
writable => Informa se será possível ou não criar ou excluir arquivos e diretórios no compartilhamento
browseable => Informa se o compartilhamento será visível ou não em ambiente Windows
create mask => Informa quais serão as permissões para arquivos criados nesse compartilhamento
directory mask => Informa quais serão as permissões para os diretórios criados nesse compartilhamento
valid users => Informa os usuários ou grupo (utilize @ antes do grupo) que terão acesso ao compartilhamento
Observações: É importante mencionar que as permissões de arquivos configuradas no Samba serão passadas para o servidor Linux, mas não existe 100% de garantia que serão reproduzidas, caso seja necessário tal garantia podemos usar ‘force create mode’ e ‘force directory mode’ para forçar a permissão que configuramos no smb.conf .
10 – Ao final de tudo, vamos reiniciar o serviço do Samba:
1 |
# service smbd restart |
Ambiente de teste
Observação: Meu roteador está configurado como servidor DHCP e fornece endereços IP automaticamente para todas as máquinas.
Para acessar a pasta compras será solicitado usuário e senha, basta informar os dados do usuário:
Agora vamos acessar através do Fedora, digitando smb:// antes do IP:
Para acessar a pasta compras também será solicitado usuário e senha, basta informa:
Bom pessoal, o artigo acabou saindo um pouco longo mas era necessário, existe um programa com interface gráfica chamado SWAT que “teoricamente” agiliza toda essa parte de configuração com o arquivo smb.conf, mas o servidor não possui interface gráfica e pessoalmente prefiro configurar na mão mesmo.
Como mencionei no início do artigo, existem diversas configurações que podem ser feitas no Samba, com várias combinações, varia da necessidade do administrador. Esse compartilhamento foi testado inclusive no Windows XP e funcionou tranquilamente.
Até a próxima ….