O mapeamento de usuários do servidor remoto com a máquina local é usado quando você deseja controlar o acesso aos arquivos/diretórios a nível de usuário. No Windows isto permite que cada arquivo/diretório tenha o acesso leitura/gravação somente para os usuários definidos e autenticados no controlador de domínio. No Linux as permissões de arquivos e diretórios podem ser definidas para o usuário do PDC, garantindo o mesmo nível de controle de acesso.
Esta seção explica como configurar o mapeamento de UID/GID entre o servidor PDC SAMBA e seus clientes NetBIOS Windows e Linux.
Para o Windows utilizar os usuários remotos do servidor para fazer seu controle de acesso por nível de usuário, siga os seguintes passos:
Entre no Painel de Controle/Propriedades de Rede e clique na tab Controle de Acesso. Marque a opção Controle de acesso a nível de usuário e coloque o nome da máquina PDC na caixa de diálogo de onde os usuários/grupos serão obtidos. Você também pode colocar o nome do grupo de trabalho, neste caso a máquina fará uma busca pelo PDC ou outra máquina de onde pode obter os nomes de usuários/grupos.
OBS: Para fazer isto, você deverá estar autenticado no domínio.
A associação de UIDs de usuários de um domínio com usuários locais no Linux é feita pelo programa winbind. Ele utiliza o mecanismo nsswitch para obter outras fontes de dados de usuários e os associa nas ferramentas de gerenciamento de contas existentes no sistema. Siga estes passos para fazer sua instalação e configuração do Winbind em um servidor Linux:
Instale o programa winbind: apt-get install
winbind
.
Modifique o arquivo smb.conf
adicionando as seguintes
linhas na seção [global]
:
winbind separator = + winbind cache time = 30 winbind uid = 10000-15000 winbind gid = 10000-12000 winbind enum users = yes winbind enum groups = yes template homedir = /home/winbind/%D/%U template shell = /bin/false
Onde
Separador usado para separar o nome dos grupos do nome de domínio. Este
parâmetro somente tem sentido quando usado em conjunto com um PDC Windows ou
quando os módulos pam_winbind.so
e
nss_winbind.so
estão sendo utilizados.
Define a quantidade de tempo em segundos que um nome/grupo permanecerá no cache local para não ser feita uma nova consulta no servidor PDC.
Especifica o intervalo que será usado para mapear os nomes de usuários remotos como UIDs locais. Você precisará ter certeza que nenhum UID nesse intervalo é usado no sistema, como pelo LDAP, NIS ou usuários normais. Por padrão, os IDS de usuários normais na maioria dos sistemas Linux, começam por 1000. No exemplo serão usados os UIDs de 10000 a 15000 para mapeamento e UIDs dos usuários do domínio para usuários locais.
Especifica o intervalo de GIDs que será usado para mapear os nomes de grupos
remotos do domínio como GIDs locais. Como no parâmetro winbind
uid
, você deverá ter certeza que esta faixa de GIDs não está sendo
usada em seu sistema.
OBS: Atualmente SAMBA não possui suporte a grupos globais, apenas para usuários globais, desta forma os grupos da máquina remota não serão trazidos para o sistema. Uma forma de contornar isto, é utilizando o LDAP ou o NIS no PDC e nos clientes Linux.
Permite enumerar usuários do winbind para retornarem dados quando solicitados. A não ser que possua uma instalação parecida em todas as máquinas (como com o uso de LDAP e NIS) responda "yes" para não ter problemas.
Permite enumerar grupos do winbind para retornarem dados quando solicitados. A não ser que possua uma instalação parecida em todas as máquinas (como com o uso de LDAP e NIS) responda "yes" para não ter problemas.
Quando o sistema cliente for um Windows NT ou baseado, este diretório será retornado como diretório de usuário para o sistema. O parâmetro %D será substituído pelo nome do domínio e %U pelo nome de usuário durante a conexão.
Este será o shell enviado para máquinas NT ou baseadas nele como shell usado
para login. O valor usado foi /bin/false
pois desabilita
os logons, mas você poderá usar /bin/sh
(ou algum outro
shell) para efetuar conexões do comando net ou outras
ferramentas NetBEUI ao servidor.
Reinicie o servidor SAMBA
Edite o arquivo /etc/nsswitch.conf
alterando a ordem de
pesquisa de nomes de usuários e grupos do sistema local para a seguinte:
passwd: files winbind group: files winbind shadow: compat
Agora, inicie o daemon winbind local com o comando:
/etc/init.d/winbind restart
.
Entre no domínio com o comando: smbpasswd -j domínio -r nome_do_PDC -U
usuario
(veja “Linux” para aprender
como entrar no domínio em caso de dúvidas).
Agora faça o teste para obter a listagem dos grupos e usuários do domínio do PDC digitando:
wbinfo -u wbinfo -g getent passwd getent group
Caso isto não aconteça, revise suas configurações e veja os logs procurando por erros quando o winbind tenta obter a lista de usuários/grupos do domínio.
Agora você deve ser capaz de criar diretórios/arquivos locais usando os nomes de usuários/grupos do domínio. Lembre-se de reiniciar sempre o winbind quando reiniciar o SAMBA por alguma modificação for feita (ao mesmo que saiba que não afeta o winbind), assim como entrar novamente no domínio, caso contrário o mapeamento deixará de funcionar.
OBS: Atualmente, o winbind não oferece suporte a restrições por data/hora de logon para estações de trabalho. Isto deverá ser implementado em uma futura versão
Copyright © 1999-2020 - Gleydson Mazioli da Silva