Opções gerais do Swat

Ao abrir o Swat, você verá um menu como o do screenshot abaixo, com vários links para a documentação disponível sobre o Samba, que você pode consultar para se aprofundar no sistema. Na parte de cima, estão os links para as seções da configuração, que é o que nos interessa:

m3c08707d

Na seção Password, você pode cadastrar usuários, substituindo o uso manual do comando “smbpasswd -a”. Neste caso, você precisará primeiro cadastrar os usuários no sistema, utilizando o comando adduser. O Swat apenas cadastra os usuários no Samba:

m1840ef01

Em seguida, acesse a seção “Globals“, que engloba todas as configurações de rede e de acesso.

A opção “netbios name” indica o nome do servidor, através do qual ele será identificado na rede Windows. Normalmente se utiliza o nome da máquina, mas isso não é obrigatório, já que o nome de máquina utilizado pelo Samba não está relacionado ao nome definido no arquivo “/etc/hosts” ou à configuração do DNS. O nome pode ter até 15 caracteres e ser composto por letras e números, além de espaços e dos caracteres a seguir: ! @ # $ % ^ & ( ) – ‘ { } ~.

Ao usar mais do que 15 caracteres, os caracteres excedentes serão ignorados. É também permitido o uso de pontos, mas usá-los não é uma boa idéia, pois torna os nomes NetBIOS difíceis de diferenciar de nomes de domínio, o que pode confundir os usuários.

A opção “workgroup” indica o grupo de trabalho ao qual o servidor pertence. Você pode tanto utilizar o mesmo grupo de trabalho em todas as máquinas da rede quanto agrupar suas máquinas em grupos distintos como “diretoria”, “vendas”, etc.

m65c23e9f

A seguir, temos a opção “interfaces“, que permite limitar os acessos ao servidor caso ele possua mais de uma placa de rede. É o caso, por exemplo, de quem acessa via ADSL ou cabo e possui uma segunda placa de rede para compartilhar a conexão com os micros da rede local. Nesses casos, a placa da web será reconhecida como eth0, enquanto a placa da rede local será reconhecida como eth1, por exemplo.

Você pode, então, preencher o campo com o endereço da placa de rede local (eth1). Assim, o Samba só aceitará conexões vindas dos micros da rede local, descartando automaticamente todas as tentativas de acesso vindas da Internet. Caso o campo permaneça vazio, o Samba permite acessos vindos de todas as placas de rede e passa a ser necessário bloquear os acessos provenientes da internet usando o firewall.

Na seção Security Options temos a opção “security”, uma opção capciosa que aceita os valores “user”, “share”, “server” e “domain”. Com nomes tão descritivos a configuração fica fácil, já que “server” é para quando estamos configurando o Samba como servidor e “domain” é para quando ele está sendo configurado como controlador de domínio, certo? Errado! 🙂

As opções share e server são opções obsoletas (como veremos em detalhes mais a seguir) e a opção “domain” é usada quando você deseja que o servidor Samba seja configurado como membro (cliente) de um domínio sob responsabilidade de outro servidor. Se você está configurando um servidor Samba, seja como um servidor de grupo de trabalho, seja como controlador de domínio, a opção correta para a opção security é a “user“.

Utilizando o modo user, as permissões de acesso aos compartilhamentos do samba ficam condicionadas às permissões de acesso de cada usuário. Por exemplo, se você compartilhar a pasta “/home/maria/arquivos”, por default apenas a usuária “maria” terá permissão para gravar novos arquivos e alterar o conteúdo da pasta.

Para que outros usuários tenham acesso à pasta, você deve dar permissão a eles, criando um novo grupo e dando permissão de escrita para os integrantes do mesmo. Outra opção é adicionar os demais usuários no grupo “maria” (cada usuário possui um grupo com o mesmo nome do login, criado no momento em que é cadastrado) e configurar as permissões de acesso de forma que o grupo possa escrever na pasta.

Você pode fazer a administração de grupos usando o “users-admin“, que facilita bastante as coisas ao trabalhar com um grande número de usuários. Lembre-se de que no Debian ele é instalado através do pacote “gnome-system-tools”. No Fedora e no CentOS ele se chama “system-config-users“:

212dbe49

Para criar um novo grupo, mude para a aba “Grupos” e use a opção “Adicionar Grupo”, especificando o nome do novo grupo e os usuários que farão parte dele na janela seguinte:

m68664734

223b9b4a

O próximo passo é alterar as permissões de acesso da pasta, colocando o grupo cadastrado como dono da pasta e fazendo com que o grupo tenha permissão para ler e alterar os arquivos. A alteração dá poderes sobre a pasta a todos os usuários que foram cadastrados no grupo:

127648fa

Se você não está tão preocupado com a segurança, pode fazer do jeito “fácil”, alterando a opção “outros” nas permissões de acesso da pasta, que dá acesso a todo mundo. Isso faz com que qualquer usuário local do sistema (ou logado via SSH) tenha acesso aos arquivos da pasta, mas não permite necessariamente que outros usuários do Samba possam acessar, pois neste caso ainda são usadas as permissões de acesso no Samba. A alteração das permissões da pasta é feita usando o Konqueror ou outro gerenciador de arquivos e não através do Samba:

m246343c0

Ou seja, é necessário fazer com que os usuários do grupo, ou todos os usuários do sistema, possam escrever na pasta, evitando que as permissões do sistema conflitem com as permissões configuradas no Samba. Se configuro o Samba para permitir que o usuário “joao” possa escrever no compartilhamento, mas a configuração das permissões da pasta compartilhada não permitem isso, o joao vai continuar sem conseguir escrever. Ao criar compartilhamentos no Samba, é preciso se preocupar com as duas coisas.

Mais abaixo, temos a opção Encrypt Password. Ela também é importe, e deve ficar sempre ativa (Encrypt Password = yes).

Todas as versões do Windows, incluindo o 3.11 suportam o uso de senhas encriptadas, mas até o Windows 95 original os clientes deixavam de usar a encriptação e passavam a enviar as senhas em texto puro quando percebiam que o interlocutor não suportava encriptação. Entretanto, isso abria margem para todo tipo de ataques, de forma que a partir do Windows 95 OSR/2 e do Windows NT 4 SP3, senhas em texto puro deixaram de ser suportadas, de forma que ao desativar o uso de senhas encriptadas no Samba, o servidor simplesmente não conseguirá conversar com as máquinas Windows e você vai ficar quebrando a cabeça até se lembrar deste parágrafo. 🙂

A partir do Samba 3, existe a opção de fazer com que o próprio Samba mantenha as senhas dos usuários sincronizadas em relação às senhas dos mesmos no sistema. Antigamente, sempre que você alterava a senha de um usuário no Samba, usando o “smbpasswd”, precisava alterar também a senha do sistema, usando o comando “passwd”. As duas senhas precisam ficar em sincronismo, do contrário caímos no problema das permissões, onde o Samba permite que o usuário acesse o compartilhamento, mas o sistema não permite que o Samba acesse os arquivos no disco.

Para ativar este recurso, ative a opção “unix password sync” no Swat. Originalmente, esta opção fica desativada e aparece apenas dentro das opções avançadas. Para chegar até ela você deve clicar no botão “Change View To: Advanced” no topo da tela. Depois de alterar, clique no Commit Changes”.

Para que tudo funcione, é necessário que as opções “passwd program” e “passwd chat” estejam configuradas com (respectivamente) os valores: “/usr/bin/passwd %u” e “*EntersnewsUNIXspassword:* %nn *RetypesnewsUNIXspassword:* %nn .”. Estes já são os valores padrão no Swat, mas não custa verificar:

m39d873f5

A opção “Hosts Allow” deve incluir os endereços IP de todos os computadores que terão permissão para acessar o servidor. Se quiser que todos os micros da rede tenham acesso, basta escrever apenas a primeira parte do endereço IP, como em “192.168.0.“, o que faz com que todos os endereços dentro do escopo sejam permitidos.

Se for incluir mais de um endereço ou mais de um escopo de endereços, separe-os usando vírgula e espaço, como em: “192.168.0., 10.0.0., 123.73.45.167”. Caso o campo permaneça vazio, a opção fica desativada e todos os micros que estiverem ligados em rede com servidor Samba poderão acessá-lo.

A opção “Hosts Deny“, por sua vez, permite especificar máquinas que não terão permissão para acessar o servidor. É importante notar que as opções “Hosts Allow” e “Hosts Deny” possuem algumas peculiaridades, sobretudo quando usadas em conjunto. Veremos mais detalhes sobre o uso das duas mais adiante.

Continuando, em uma rede Windows, uma das máquinas fica sempre responsável por montar e atualizar uma lista dos compartilhamentos disponíveis e enviá-la aos demais, conforme solicitado. O host que executa esta função é chamado de “Master Browser“.

De uma forma geral, todas as versões do Windows são capazes de atuar como Master Browser da rede e o cargo pode mudar de dono conforme as máquinas vão sendo ligadas e desligadas, mas o Samba executa o trabalho de forma muito eficiente, de forma que, a menos que você tenha outro servidor em posição hierarquicamente superior, é sempre interessante delegar esta tarefa ao servidor Samba.

O cargo de Master Browser é disputado através de uma eleição, onde os micros da rede enviam pacotes de broadcast contendo informações sobre o sistema operacional usado, o tempo de uptime e outras informações. Ao receber o pacote de broadcast de um “oponente”, cada máquina compara suas credenciais com as do pacote recebido. Se suas credenciais forem inferiores, ela desiste da eleição, caso contrário responde enviando o pacote com suas próprias credencias. Este processo de eliminação continua até que sobre apenas uma máquina, que passa então a ser o Master Browser da rede (até que seja desconectada da rede, ou perca o cargo para outra máquina com credenciais superiores).

A principal credencial é o “OS Level”, que nas máquinas Windows varia de acordo com a versão do sistema. As máquinas com o Windows NT Server, 2000 Server, 2003 Server ou 2008 Server possuem um Os Level de 32, as com o Windows NT Workstation, 2000 Professional ou qualquer versão doméstica do XP ou Vista possuem OS Level de 16 e as versões antigas do Windows (3.11, 95, 98 e ME) possuem OS Level de apenas 1.

Nos servidores Samba o valor é ajustado através da opção “OS Level“, na seção Browse Options. Isso permite que você “trapaceie”, fazendo com que o servidor Samba sempre ganhe as eleições. Para isso, configure esta opção com um valor alto, 100 por exemplo, para que ele sempre ganhe as eleições (você pode usar qualquer valor entre 0 e 255). O default dessa opção é 20, o que faz com que o servidor Samba ganhe de todas as máquinas Windows, com exceção das versões Server.

Para completar, deixe a opção “Local Master” e “Preferred Master” como “Yes“. A opção “Local Master” faz com que o servidor Samba convoque uma nova eleição sempre que necessário (de forma a defender o cargo caso outra máquina tente assumir a posição) e a “Preferred Master” dá a ele uma leve vantagem quando confrontado com outra máquina com o mesmo OS Level:

m79f64d60

É importante enfatizar que você nunca deve colocar dois servidores Samba na rede com o mesmo OS Level e com a opção “Preferred Master” ativada, caso contrário eles iniciarão uma disputa interminável pelo cargo, o que fará com que a navegação na rede se torne intermitente. Ao usar vários servidores Samba na rede, crie uma hierarquia, usando valores diferentes para a opção OS Level. Se, por outro lado, você não desejar que o servidor Samba participe das eleições (caso já tenha outro servidor desempenhando este papel), basta definir a opção “Local Master” com o valor “no”.

Logo abaixo, deixe a opção WINS Support ativada (Yes) para que o servidor Samba atue como um servidor WINS para os demais micros da rede. A opção WINS Server deve ser deixada em branco, a menos que exista na rede algum servidor Wins (rodando uma das versões Server do Windows) ao qual o servidor Linux esteja subordinado. Caso o único servidor seja a máquina Linux, você pode configurar as máquinas Windows para utilizá-la como servidor Wins. Para isto basta colocar o seu endereço IP no campo “Servidor Wins” na configuração de rede das estações (veja mais detalhes a seguir).

Terminado, pressione o botão “Commit Changes” no topo da tela para que as alterações sejam salvas no arquivo “/etc/samba/smb.conf“.

Uma observação importante é que o Swat lê o arquivo smb.conf ao ser aberto, lendo as opções configuradas e mostrando-as na interface, mas gera um novo arquivo sempre que você clica no “Commit Changes”. Ao ler o arquivo, ele procura por trechos específicos de texto, ignorando tudo que for diferente. Isso faz com que ele remova qualquer tipo de comentário incluído manualmente no arquivo. Em geral, quem tem o hábito de editar manualmente o smb.conf, acaba nunca usando o Swat e vive-versa.

Sobre o Autor

Redes Sociais:

Deixe seu comentário

X