Se você deseja tornar o compartilhamento de arquivos entre sistemas Linux e Windows mais fácil e eficiente, o Samba é a solução ideal. Neste guia, vamos mostrar passo a passo como instalar e configurar o servidor de arquivos Samba no sistema operacional Ubuntu. Com o Samba, você pode criar um ambiente de rede perfeito para compartilhar recursos entre diferentes computadores, independentemente do sistema operacional que eles utilizem.
Tabela de Conteúdo
ToggleO que é o Samba Linux?
O Samba é uma implementação do protocolo SMB/CIFS, que permite a interoperabilidade entre sistemas Linux e Windows. Isso significa que você pode compartilhar pastas, arquivos e até mesmo impressoras em uma rede local, sem complicações. O Samba é amplamente utilizado em ambientes empresariais e domésticos devido à sua eficácia e facilidade de uso.
O Samba é normalmente instalado e executado em sistemas Linux e consiste em vários programas que servem a diferentes propósitos, sendo os dois mais importantes:
Como Instalar o Servidor Samba no Ubuntu
O Samba está incluído na maioria das distribuições Linux. Para instalar o Samba no Ubuntu, basta executar o seguinte comando no terminal:
sudo apt install samba samba-common-bin
Para verificar a versão do Samba, execute:
smbd --version
Para verificar se o serviço Samba está em execução, emita o seguinte comando:
systemctl status smbd nmbd
Para iniciar esses dois serviços, emita o seguinte comando:
sudo systemctl start smbd nmbd
Uma vez iniciado, o smbd
estará ouvindo na porta TCP 139 e 445, enquanto o nmbd
estará ouvindo nas portas UDP 137 e 138.
- TCP 139: usado para compartilhamento de arquivos e impressoras e outras operações.
- TCP 445: a porta CIFS sem NetBIOS.
- UDP 137: usado para navegação na rede NetBIOS.
- UDP 138: usado para serviço de nome NetBIOS.
Se você habilitou o firewall UFW no Ubuntu, será necessário abrir as portas acima no firewall com o seguinte comando:
sudo ufw allow samba
Criando um Compartilhamento Privado no Samba
Nesta seção, vamos ver como criar um compartilhamento Samba privado que requer que o cliente insira um nome de usuário e senha para ter acesso. O arquivo de configuração principal do Samba está localizado em /etc/samba/smb.conf
e pode ser editado no terminal com um editor de texto de linha de comando.
sudo nano /etc/samba/smb.conf //ou sudo gedit
Na seção [global]
, certifique-se de que o valor do Grupo de trabalho (workgroup) seja o mesmo das configurações de grupo de trabalho dos computadores Windows. No exemplo abaixo, laboratório 213. Você pode encontrar a configuração no seu computador Windows indo para Painel de Controle > Sistema e Segurança > Sistema.
workgroup = 213
![global settings smb.conf](https://ehgomes.com.br/wp-content/uploads/2023/09/smb.conf-arquivo-de-configuracao-do-samba.webp)
![workgroup windows](https://ehgomes.com.br/wp-content/uploads/2023/09/samba-linux-grupo-de-trabalho-1.webp)
Role até o final do arquivo smb.con e adicione uma nova seção da seguinte forma:
[Private] comment = Necessita de senha para entrar! path = /home/aluno/private/ browseable = yes guest ok = no writable = yes valid users = @aluno
Explicação:
private
é o nome da pasta que será exibido na rede Windows.comment
é uma descrição para a pasta compartilhada.path
especifica o caminho para a pasta compartilhada. Estou usando /home/aluno/private/ como exemplo, mas você também pode usar uma pasta no seu diretório pessoal.browseable = yes
: Permite que outros computadores na rede vejam o servidor Samba e o compartilhamento Samba. Se definido comono
, os usuários precisam saber o nome do servidor Samba e, em seguida, inserir manualmente um caminho no gerenciador de arquivos para acessar a pasta compartilhada.guest ok = no
: Desativa o acesso de convidados. Em outras palavras, é necessário inserir nome de usuário e senha no computador cliente para acessar a pasta compartilhada.writable = yes
: Concede permissão de leitura e gravação aos clientes.valid users = @aluno
: Apenas os usuários no gruposamba
podem acessar esse compartilhamento Samba.
Salve e feche o arquivo. (Para salvar o arquivo no editor de texto nano
, pressione Ctrl+O e depois pressione Enter para confirmar o nome do arquivo a ser gravado. Para fechar o arquivo, pressione Ctrl+X.) Agora precisamos criar um usuário Samba.
Primeiro, é necessário criar uma conta de usuário Linux padrão com o seguinte comando. Substitua nome de usuário
pelo nome de usuário desejado.
sudo adduser aluno
Você será solicitado a definir uma senha. Após isso, também é necessário definir uma senha Samba separada para o novo usuário com o seguinte comando:
sudo smbpasswd -a aluno
Crie o grupo Samba.
sudo groupadd samba
E adicione este usuário ao grupo Samba.
sudo gpasswd -a aluno samba
Crie a pasta de compartilhamento privado.
sudo mkdir -p /home/aluno/private/
O grupo Samba precisa ter permissão de leitura, gravação e execução na pasta compartilhada. Você pode conceder essas permissões executando o seguinte comando. (Se o seu sistema não tiver o comando setfacl
, será necessário instalar o pacote acl
com sudo apt install acl
.)
sudo setfacl -R -m "g:samba:rwx" /home/aluno/private/
Em seguida, execute o seguinte comando para verificar se há erros de sintaxe.
testparm
Agora, tudo o que resta a fazer é reiniciar os daemons smbd
e nmbd
.
sudo systemctl restart smbd nmbd
Como Criar um Compartilhamento Público no Samba Sem Autenticação
Para criar um compartilhamento público sem exigir nome de usuário e senha, as seguintes condições devem ser atendidas:
- Defina
guest ok = yes
na definição de compartilhamento para permitir acesso de convidados. - Conceda permissão de leitura, gravação e execução na pasta pública à conta
nobody
, que é a conta de convidado padrão.
Primeiro, abra e edite o arquivo de configuração do Samba.
sudo nano /etc/samba/smb.conf //ou sudo gedit
Na seção
[global]
, certifique-se de que o valor do Grupo de trabalho (workgroup) seja o mesmo das configurações de grupo de trabalho dos computadores Windows. No exemplo abaixo, laboratório 213. Você pode encontrar a configuração no seu computador Windows indo para Painel de Controle > Sistema e Segurança > Sistema.A parte acima já foi configurada no segundo passo da Criação do Compartilhamento Privado no topo do Post.
Role até o final do arquivo e cole as seguintes linhas.
[public] comment = public share, no need to enter username and password path = /home/aluno/public/ browseable = yes writable = yes guest ok = yes
![smb.conf Ubuntu](https://ehgomes.com.br/wp-content/uploads/2023/09/compartilhamento-de-arquivos-com-samba-Ubuntu.webp)
Salve e feche o arquivo. Em seguida, crie a pasta /home/aluno/public/
.
sudo mkdir -p /home/aluno/public/
Em seguida, certifique-se de que a conta nobody
tenha permissão de leitura, gravação e execução na pasta pública executando o seguinte comando. (Se o seu sistema não tiver o comando setfacl
, será necessário instalar o pacote acl
com sudo apt install acl
.)
sudo setfacl -R -m "u:nobody:rwx" /home/aluno/public/
Reinicie o smbd
e o nmbd
.
sudo systemctl restart smbd nmbd
Acessando a Pasta Compartilhada do Samba a Partir do Windows
Em um computador Windows que esteja na mesma rede (Workgroup = 213), abra o Explorador de Arquivos e clique em Rede no painel esquerdo. Se você vir a seguinte mensagem, clique na mensagem e ative a descoberta de rede e o compartilhamento de arquivos.
Se estiver usando uma máquina virtual, leia as instruções
Configure a placa de rede para: Placa de rede exclusiva para Hospedeiro
Tenha certeza que está na mesma rede da maquina virtual, digite hostname -I e pegue o IP da Rede.
Em seguida, insira \\
seguido pelo endereço IP do servidor Samba na barra de endereços do Explorador de Arquivos, como \\
192.168.56.101 Você verá uma lista de recursos compartilhados no servidor Samba.
![rede windows com samba Ubuntu](https://ehgomes.com.br/wp-content/uploads/2023/09/rede-windows-com-samba-Ubuntu.webp)
Em seguida, clique duas vezes na pasta compartilhada. Para acessar o compartilhamento privado, você precisará inserir o nome de usuário e a senha do Samba. Não é necessário fazer isso para acessar o compartilhamento público.
Uma vez conectado, você pode ler, gravar e excluir arquivos na pasta compartilhada do Samba.
Conclusão
O Samba é uma ferramenta poderosa para compartilhar arquivos e recursos em uma rede local. Com os passos acima, você pode instalar e configurar o servidor de arquivos Samba no Ubuntu de forma rápida e eficaz. Lembre-se de manter as permissões adequadas e configurar as pastas compartilhadas conforme necessário.
Agora, você está pronto para compartilhar arquivos entre sistemas Linux e Windows em sua rede local de maneira simples e eficiente.
Perguntas Frequentes (FAQs)
No Explorador de Arquivos do Windows, digite \\nome_do_servidor\samba
na barra de endereço e pressione Enter. Faça login com as credenciais necessárias.
Sim, o Samba permite compartilhar impressoras em sua rede local. Basta configurá-las no arquivo de configuração do Samba.
Sim, desde que você configure as permissões corretamente e use senhas fortes para proteger o acesso aos recursos compartilhados.
Sim, você pode acessar recursos compartilhados em um sistema Linux usando o Samba. Use um cliente SMB/CIFS para se conectar aos compartilhamentos.
Sim, outras alternativas incluem o NFS (Network File System), que também é eficaz para compartilhar arquivos entre sistemas diferentes. A escolha depende das necessidades específicas do seu ambiente de rede.
O Samba no Linux é uma aplicação que permite o compartilhamento de arquivos e impressoras entre sistemas Linux e Windows em uma rede. Ele é útil para tornar a comunicação entre sistemas diferentes mais fácil e eficiente, garantindo a interoperabilidade.