Samba é uma implementação do protocolo SMB/CIFS que permite o compartilhamento de arquivos e impressoras entre sistemas Linux e Windows. Nesta aula, vamos explorar a configuração de um servidor Samba no Linux, abordando a instalação, configuração básica, segurança e práticas recomendadas.
O que é Samba?
Samba permite que sistemas Linux funcionem como servidores de arquivos e impressoras em redes mistas de Linux e Windows. Ele facilita a interoperabilidade entre diferentes sistemas operacionais, permitindo que os usuários acessem e compartilhem recursos sem complicações.
Vantagens do Samba
- Interoperabilidade: Permite o compartilhamento de arquivos e impressoras entre Linux e Windows.
- Flexibilidade: Suporta diversos tipos de configurações e ambientes de rede.
- Segurança: Oferece várias opções de segurança e autenticação.
Instalação do Samba
No Servidor
Para instalar o Samba em distribuições baseadas em Debian (como Ubuntu):
$ sudo apt update
$ sudo apt install sambaPara distribuições baseadas em Red Hat (como CentOS):
$ sudo yum install sambaVerificando a Instalação
Após a instalação, verifique a versão do Samba para confirmar que foi instalado corretamente:
$ smbd --versionConfiguração do Samba
Diretórios de Compartilhamento
Escolha o diretório que você deseja compartilhar (por exemplo, /srv/samba/share):
$ sudo mkdir -p /srv/samba/share
$ sudo chown nobody:nogroup /srv/samba/share
$ sudo chmod 2775 /srv/samba/shareEditando o Arquivo smb.conf
O arquivo de configuração principal do Samba está localizado em /etc/samba/smb.conf. Edite este arquivo para configurar o compartilhamento.
$ sudo nano /etc/samba/smb.confAdicione a seguinte configuração básica ao final do arquivo:
[global]
   workgroup = WORKGROUP
   server string = Samba Server %v
   netbios name = ubuntu
   security = user
   map to guest = bad user
   dns proxy = no
[Share]
   path = /srv/samba/share
   browsable =yes
   writable = yes
   guest ok = yes
   read only = no
   create mask = 0775
   directory mask = 0775- workgroup: Define o grupo de trabalho SMB.
- server string: Descrição do servidor.
- netbios name: Nome NetBIOS do servidor.
- security: Define o modo de segurança (neste caso, usuário).
- map to guest: Mapeia usuários inválidos para convidado.
- dns proxy: Desativa o proxy DNS.
Reiniciando o Samba
Para aplicar as alterações, reinicie o serviço Samba:
$ sudo systemctl restart smbd
$ sudo systemctl enable smbdAdicionando Usuários Samba
Criando um Novo Usuário
Para adicionar um usuário ao Samba, primeiro crie o usuário no sistema (se ainda não existir):
$ sudo adduser sambausuarioDepois, adicione o usuário ao Samba:
$ sudo smbpasswd -a sambausuarioPermissões e Propriedades
Para garantir que o usuário tenha as permissões corretas no diretório compartilhado:
$ sudo chown -R sambausuario:sambausuario /srv/samba/shareConfiguração de Segurança
Autenticação e Permissões
A configuração de segurança pode ser ajustada no arquivo smb.conf. Para exigir autenticação de usuário:
security = user
passdb backend = tdbsamFirewalls
Certifique-se de que seu firewall permite tráfego SMB. Adicione regras para permitir portas 137-139 e 445:
Para ufw (firewall do Ubuntu):
$ sudo ufw allow sambaPara firewalld (firewall do CentOS):
$ sudo firewall-cmd --permanent --add-service=samba
$ sudo firewall-cmd --reloadMonitoramento e Logs
Verifique os logs do Samba para monitorar atividades e solucionar problemas. Os logs estão geralmente em /var/log/samba/log.smbd.
Para monitorar os logs em tempo real:
$ sudo tail -f /var/log/samba/log.smbdExemplos Práticos
Exemplo 1: Configurando um Servidor Samba Básico
- Instale o Samba:
$ sudo apt install samba  # Debian
$ sudo yum install samba  # Red Hat- Crie e configure o diretório a ser compartilhado:
$ sudo mkdir -p /srv/samba/share
$ sudo chown nobody:nogroup /srv/samba/share
$ sudo chmod 2775 /srv/samba/share- Edite o arquivo /etc/samba/smb.conf:
$ sudo nano /etc/samba/smb.conf
# Adicione a seguinte configuração:$ sudo nano /etc/samba/smb.conf
# Adicione a seguinte configuração:
[global]
   workgroup = WORKGROUP
   server string = Samba Server %v
   netbios name = ubuntu
   security = user
   map to guest = bad user
   dns proxy = no
[Share]
   path = /srv/samba/share
   browsable = yes
   writable = yes
   guest ok = yes
   read only = no
   create mask = 0775
   directory mask = 0775
- Reinicie o Samba:
$ sudo systemctl restart smbd
$ sudo systemctl enable smbd- Adicione um usuário Samba:
$ sudo adduser sambausuario
$ sudo smbpasswd -a sambausuario
$ sudo chown -R sambausuario:sambausuario /srv/samba/share- Configure o firewall para permitir tráfego SMB:
Para ufw:
$ sudo ufw allow sambaPara firewalld:
$ sudo firewall-cmd --permanent --add-service=samba
$ sudo firewall-cmd --reloadConfigurar e gerenciar servidores Samba no Linux é uma habilidade essencial para administradores de sistemas, especialmente em ambientes de rede mista. Nesta aula, exploramos como configurar um servidor Samba, adicionar usuários, e aplicar práticas de segurança. Pratique essas técnicas para ganhar confiança na administração de servidores Samba no Linux.
Se tiver dúvidas ou sugestões, deixe um comentário no blog NerdExpert.com.br. Na próxima aula, exploraremos a configuração de servidores DHCP no Linux.
Sou um profissional na área de Tecnologia da informação, especializado em monitoramento de ambientes, Sysadmin e na cultura DevOps. Possuo certificações de Segurança, AWS e Zabbix.





