Eleições no Compartilhamento Samba

Conheça o complexo sistema de eleições, que definem as máquinas de uma rede Microsoft Windows ou Linux, no compartilhamento de arquivos via SAMBA!

| Se você apoia nosso site, desative o AdBlock quando visitá-lo, inclusive em Mobile!
Os anúncios são poucos e não invasivos. Se quiser contribuir com nosso trabalho, clique em qualquer banner de sua preferência, exceto dos Parceiros. 
Mais detalhes clicando aqui.

Já abordamos de forma introdutória e prática sobre a instalação e configurações do Samba Share nesta publicação do site! Portanto serei um pouco mais direto.

Introdução

Bom, você já conhece e usa o Samba Share e suas configurações, pode ser que tenha presenciado algum problema envolvendo “máquinas que somem da rede”, “falhas de conexão do samba”, etc.

Esse problemas podem surgir se não tivermos bons candidatos ás eleições internas que o Samba convoca e se o vencedor do pleito virtual não for devidamente qualificado!

Eleições

A rede Samba é sempre governada por um Master Browser. Se ele não existir, qualquer máquina na rede, seja ela Windows ou Linux, vai convocar uma eleição para decidir quem será o escolhido para o papel.

O Master Browser é responsável por agregar toda a informação disponível em um Dominio – mais conhecido como WORKGROUP -. Ele contém as listas de computadores e recursos compartilhados; e com isso ele consegue orientar os demais quanto aos recursos disponíveis. É graças ao Master Browser que vemos aquela listagem de máquinas compartilhadas numa rede Samba

OpenELEC compartilhado como Samba e exibido num computador Windows.
A lista de pastas compartilhadas foi gerada por um Master Browser na rede.

Características

Quando ocorre uma eleição, tal qual o pleito visto no mundo real, cada candidato apresenta suas “propostas de governo”: Cada máquina avalia seus próprios recursos e os pontua.

Um Windows Server terá uma nota maior que um Windows 10 Pro, da mesma forma que este será maior que de um Windows 7. Se o sistema for sub-categorizado tambem conta pontos: Windows 10 Pro vale mais que um Windows 10 Home.

Ao fim todas as máquinas analisam a pontuação de todas e quem no final tiver mais pontos, será o Master Browser. Novas eleições serão convocadas se:

  • 1 Máquina não encontrar o Master Browser, ele vai convocar novas eleições.
  • Uma máquina do tipo Preferred Master Browser adentrar a rede.
  • Uma máquina com Windows Controlador de Domínios (PDC ou BDC) adentrar a rede.
    Esse tipo de aplicação do Windows também possui mais pontos, inclusive um Windows Server 2016 com PDC/BDC terá uma das maiores pontuações numa eleição local, difícil de ser vencido.

Vantagens

A Master Browser sempre será uma máquina melhor que as demais, mais otimizada e preparada, dando maior estabilidade. Dificilmente, pra não dizer jamais, será uma máquina cliente comum, que pode apresentar falhas, malwares e etc.

Se hipoteticamente uma Master Browser for do tipo cliente e esta estiver com problemas, causará sumiço de máquinas da rede, lentidão pra compartilhar arquivos e etc. Esse tipo de problema pode ser visto quando se tem uma rede de máquinas Windows “iguais” – todas elas Windows 7, por exemplo – e sem um “Server” conectado a essa rede; A cada eleição, uma nova máquina será escolhida aleatoriamente, aumentando drasticamente a chance de isso causar problemas de estabilidade.

Tipos

Existem 2 tipos de Master Browser:

  • Master Browser Local
    A Local trabalha num segmento da rede LAN, mapeando máquinas e recursos.
  • Master Browser de Domínio
    A Domínio opera colhendo dados de toda uma rede LAN, mapeando máquinas e recursos, e colhendo as informações armazenadas pelos Master Browser Locais.
    Se um Local precisa de uma informação de uma máquina em outro segmento de rede, ele solicita essa informação á Domínio.

Linux

Mas você só falou de Windows até agora; e o Linux? 

Bem, normalmente numa rede mesclada Windows + Linux, os pinguins terão a nota mais baixa por motivos óbvios: O Samba é nativo do Windows e ele é preferível nesse tipo de gestão.

Claro, você pode fraudar as eleições definindo o Linux como o portador da pontuação mais alta!
Isso faz com que um Linux vença até do Windows Server 2016 PDC/BDC numa eleição.

Configurando

Primeiro verifique quem na rede é a atual Master:

$ nmblookup -M nome-da-maquina

ou

$ nmblookup -A IP-da-maquina

Faça isso 1 a 1 nas máquinas da rede para saber quem é a master.
Será aquela que exibir _MSBROWSE_ no resultado.

Esse comando será interessante para confirmar que o Linux é o Master e a máquina anterior deixou de sê-lo.

Tornando o Linux o Master

Lembra do meu post sobre o Samba? Lá você tinha configurado um compartilhamento Samba basico com as seguintes credenciais:

[global] 
workgroup = <domínio ou grupo do windows> 
server string = <descrição do servidor> 
netbios name = <nome do servidor linux> 
security = user
map to guest = bad user 
dns proxy = no

Abaixo de NetBios Name, adicione:

domain master = yes
local master = yes
preferred master = yes
os level = 255

Explicação:

As linhas domain e local tornam a máquina a Master tanto de Local quanto de Dominio, buscando dados de toda a rede. Já a linha Preferred Master força novas eleições a qualquer momento em que ela entrar na rede.

A linha os level é interessante: Ela permite “forjar” as eleições, dando o valor máximo possível!

Cada sistema operacional possui um peso medido sob suas características e esse peso tem 8 bits, equivale a 2^8 = 256. Ou seja, o valor vai de 0 a 255. Como falei anteriormente, cada máquina na rede faz o cálculo consigo mesma com características e informa o valor á rede. Com o valor em 255, você torna o Linux uma super-máquina que vencera qualquer eleição, mesmo para um Windows Server 2016 PDC/BDC – ou seja, venceu na base da desonestidade! :p

Seu arquivo smb.conf ficará mais ou menos assim:

[global]
workgroup = <domínio ou grupo do windows>
server string = <descrição do servidor>
netbios name = <nome do servidor linux>
domain master = yes
local master = yes
preferred master = yes
os level = 255
security = user
map to guest = bad user
dns proxy = no

Após adicionar essas linhas, salve, saia e reinicie os processos do Samba:

$ sudo systemctl restart nmb
$ sudo systemctl restart smb

Aguarde as eleições, que podem demorar até 1 minuto pra serem realizadas.
Repita o comando para verificar quem é o Master Browser agora!

$ nmblookup -M nome-da-maquina

ou

$ nmblookup -A IP-da-maquina

Pronto. Se fez tudo certo, o Linux é o eleito da vez!

Conclusão

Me segurei para não fazer nenhum trocadilho envolvendo as Eleições Brasileiras que ocorrem agora em Outubro, as quais falei da Urna Eletrônica nesta publicação; Mas como podem ter entendido, você pode ter problemas nas eleições de um sistema Samba caso os candidatos não sejam tão qualificados ou se alguém na rede frauda as “cédulas de votação” e ganha de forma “desonesta”.

Brincadeiras á parte, claro, mas tal qual no mundo real, uma eleição do Samba é uma forma democrática de se definir um líder para um conjunto de máquinas. Desde que os vencedores sejam algum sistema Linux ou Microsoft Windows Server, não devemos nos preocupar muito quanto a quem vence, mas sim suas atitudes para o bem de toda a rede.

  • Vote consciente! Vote Linux para Samba! #sqn

#UrbanCompassPony

Referências Bibliográficas:
MOTA FILHO, João Eriberto. Descobrindo o Linux. 3a Edição. São Paulo, NOVATEC, 2012.

Deixe um comentário