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
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
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.
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.