Pular para o conteúdo
Início » Aprendendo Linux Parte 16 – Configuração de Servidores Samba no Linux

Aprendendo Linux Parte 16 – Configuração de Servidores Samba no Linux

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 samba

Para distribuições baseadas em Red Hat (como CentOS):

$ sudo yum install samba
Verificando a Instalação

Após a instalação, verifique a versão do Samba para confirmar que foi instalado corretamente:

$ smbd --version

Configuraçã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/share
Editando 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.conf

Adicione 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 smbd

Adicionando 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 sambausuario

Depois, adicione o usuário ao Samba:

$ sudo smbpasswd -a sambausuario
Permissõ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/share

Configuraçã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 = tdbsam
Firewalls

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 samba

Para firewalld (firewall do CentOS):

$ sudo firewall-cmd --permanent --add-service=samba
$ sudo firewall-cmd --reload
Monitoramento 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.smbd

Exemplos Práticos

Exemplo 1: Configurando um Servidor Samba Básico
  1. Instale o Samba:
$ sudo apt install samba  # Debian
$ sudo yum install samba  # Red Hat
  1. 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
  1. 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
  1. Reinicie o Samba:
$ sudo systemctl restart smbd
$ sudo systemctl enable smbd
  1. Adicione um usuário Samba:
$ sudo adduser sambausuario
$ sudo smbpasswd -a sambausuario
$ sudo chown -R sambausuario:sambausuario /srv/samba/share
  1. Configure o firewall para permitir tráfego SMB:

Para ufw:

$ sudo ufw allow samba

Para firewalld:

$ sudo firewall-cmd --permanent --add-service=samba
$ sudo firewall-cmd --reload

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

Marcações: