Implementando um servidor de domínio

Esse artigo descreve passo a passo os procedimentos para levantar um servidor de domínio em sua rede Linux/Windows, esses procedimentos foram testados e está em produção em 5 sites, utilizado o sistema CentOS 4 com Samba 3. Estou realizando testes com LDAP Master e Slave e assim que terminar estarei publicando.

[ Hits: 116.981 ]

Por: Breny Ricardo Martins Coelho em 17/06/2008


Desabilitando o Home Profile



Com a configuração desse procedimento os profiles "perfil" dos usuários ficam armazenados nas estações de trabalho, impedindo o consumo da banda de rede com transferência de arquivos, mas mantendo um compartilhamento pessoal na rede, para o usuário.

Adicione no arquivo /etc/samba/smb.conf as linhas abaixo:

logon home =
logon path =

Após ativar esse procedimento, a linha "logon drive =" para de funcionar e caso utilize a mesma para mapear automaticamente um drive de rede apontando para o home do usuário, será necessário então adicionar o comando net use, no script de logon de cada usuário, apontando para o home do mesmo.

Criando os scripts de logon

Para automatizar algumas tarefas no momento de logon do usuário no Windows, será necessário criar o compartilhamento no Samba chamado netlogon, nesse compartilhamento constará os scripts para os usuários e computadores. Esses scripts podem ser utilizados para fazer com que seja criada as unidades mapeadas no Windows conforme os usuários e computadores, adicionar comando para sincronismo de tempo entre as máquinas Windows e o Samba.

No smb.conf ative o compartilhamento [netlogon]. Nessa seção será necessário conter as linhas:

path = /home/netlogon

O caminho do diretório Linux que será utilizado para armazenar os scripts para logon. Lembre-se de configurar o acesso de leitura para os usuários que deveram ler os scripts, caso contrário, os usuários ao logar com as máquinas Windows no Samba não conseguiram ler esses scripts, por padrão, ao criar esse diretório o mesmo já possuirá as permissões necessárias, mas não custa nada verificar se as permissões estão corretas.

É necessário que você crie os arquivos textos com a extensão .bat com os comandos que você precisa que seja executado assim que o usuário logar no Samba, como por exemplo:

net use e: \\servidor-samba\nome-do-compartilhamento

É importante dizer que esse arquivo texto precisa ser criado no Windows com o Bloco de Notas, pois caso contrário o Windows não entenderá corretamente o conteúdo desse arquivo, pois é diferente a maneira como o Windows e Linux lêem arquivos textos.

Caso esses scripts sejam criados no Linux com um editor de texto, como o vi, será necessário após terminar de alterá-lo, rodar o comando unix2dos nesse arquivo, dessa forma esse comando configura as quebras de linhas no arquivo, de modo que o Windows entenda o seu significado.

Dependendo da configuração utilizada no arquivo smb.conf esses scripts poderão ser utilizados para usuários e computadores, conforme a linha:

logon script = %U.bat #Os scripts serão utilizados com base nos nomes dos usuários, ou seja, quando existir um arquivo .bat com o nome idêntico ao nome do usuário que esta fazendo o login o mesmo será utilizado. Isso funciona para os nomes dos computadores.

Ativando o recurso de recuperação de arquivos apagados "Lixeira" nos compartilhamentos

No Samba, versão 3.0.10, no qual esse manual esta se baseando a forma de fazer isso é inserindo as seguintes linhas diretamente no smb.conf, ao contrário de outros modos que solicitam criar um arquivo texto com essas configurações abaixo e depois apontar esse arquivo dentro do smb.conf.

Caso você queira habilitar esse recurso para todos os compartilhamentos, em vez de colocar essas linhas no compartilhamento, coloque elas na seção global.

Na linha abaixo, eu adicionei esse recurso somente no compartilhamento, chamado "publico".

[publico]
recycle:exclude = *.tmp *.temp *.o *.obj ~$*
recycle:keeptree = True
recycle:touch = True
recycle:versions = True
recycle:noversions = .doc|.xls|.ppt
recycle:repository = .recycle
recycle:maxsize = 10000000
vfs objects = recycle

Página anterior    

Páginas do artigo
   1. Implementando servidor de arquivos e autenticação - Samba DC
   2. Criando o grupo para o administrador
   3. Adicionando o usuário administrador no Samba
   4. Configurando o Windows para o domínio com o Samba
   5. Criando compartilhamentos e suas permissões
   6. Desabilitando o Home Profile
Outros artigos deste autor

OpenLDAP e Samba (redundância)

Criando um banco de dados para obter ajuda do sistema

Instalando Oracle 10G

Criando disquetes de inicialização

Configurando uma OpenVPN com o BRMA

Leitura recomendada

Instalando o Samba + LDAP no Debian

Carregando scripts ao se logar no Samba

Instalação do Samba-3.6.1 + Kerberos + Winbind no Slackware 13.1.0

Resara Server Configuration

Samba e as "vulnerabilidades" encontradas

  
Comentários
[1] Comentário enviado por JulioAnizio em 18/06/2008 - 00:38h

Muito util seu artigo.

[2] Comentário enviado por genetico em 18/06/2008 - 00:38h

Gostei muito do seu artigo, ele é simples e objetivo, muito bom mesmo.
Não sou muito bom em samba, talvez minha pergunta seja uma bobeira, porem gostaria de saber se tem como eu conseguir fazer igual ao ad onde posso setar diretivas para as maquinas dos clientes como:
Setar o wallpaper padrão, impedir o usuário de instalar programas (essas coisas), impedir de determinado perfil ou usuário executar algum programa ou recurso do windows (acho que o nome perfil mandatorio) ?

Vlw, seu artigo foi muito bom.

[3] Comentário enviado por lord_roxton em 18/06/2008 - 11:08h

No SAMBA não tem como aplicar diretivas de segurança (GPO) como em um servidor AD. Basicamente o SAMBA funciona como um autenticador para os clientes Windows e também como servidor de arquivos!

William

[4] Comentário enviado por maran em 18/06/2008 - 12:49h

Bom o artigo em si, esta legal, Samba é uma solução que eu gosto muito, da pra faze muita coisa.
Faltou ou não vi, se for isso me desculpe, você demostrar como pode ser feito a criação automatica das contas usando o admin user, pois digamos que minha rede tem 500 micro, eu preciso cria 500 contas na mão, lógico que não para isso existe o parâmetro

add machine script = useradd - g pdc -c "Máquina de Domínio" -s /bin/false -d /dev/null %u

Simples não é?
A conta será criada assim que a máquina engressar no domínio.
Mas os clientes teram de ingressar a máquina usando a conta do administrador de domínio.
Outra coisa que vale lembrar:
Nas versões do Samba anteriores a 3 o parâmetro add machine script deve ser substituido po add user script.

Bom com isso diantamos bem o nosso lado em...

Bom ai você usa a conta do admin, mas ingressa rapidamente as máquinas, feito isso é so mudar o usuario admin, para não ter problemas.

Vlw, um abraço

[5] Comentário enviado por genixsky em 18/06/2008 - 14:32h

Bom dia a todos.

Maran.
É realmente possível configurar o Samba para que ele mesmo cadastre a estação, mas não costumo realizar esse procedimento nos sites, pois realizo o controle manual das máquinas que eu quero no domínio e as que devem ficar de fora.

Genetico.

O que o lord_roxton disse, em parte esta certo, o Samba não trabalho com GPO como conhecemos no AD, mas realizo a administração de algumas tarefas dos usuários através do Windows, utilizando o Samba como um ajudante, por exemplo, eu utilizo o netlogon para configurar os papeis de parede, Internet Explorer, WSUS, registro de Dlls para um sistema utilizado na minha rede, onde todos os usuários precisam ter acesso.
Foi bom você ter tocado nesse assunto, pois vou documentar esse procedimento com o netlogon para administração das estações.


[6] Comentário enviado por genixsky em 18/06/2008 - 17:09h

Acabei de colocar o conteudo sobre política no Samba e estou no aguardo da aprovação pelo pessoal da VOL

[7] Comentário enviado por genetico em 18/06/2008 - 23:26h

Quando você fala em netlogon seria aquela [netlogon] do samba ou seria o via scripts BAT ou os dois ? (como já disse não sou muito bom em SAMBA, me desculpe qualquer besteira que tenha falado)
E o LDAP ? também serviria pra fazer isso ou estou enganado ?
Legal, você lançar um novo artigo dedicado a isso.
Você, pode dizer qual o nome do próximo artigo pra gente acompanhar.

[8] Comentário enviado por genixsky em 19/06/2008 - 12:52h

Bom dia Genetico, então estava me referindo ao compartilhamento do Samba chamado de netlogon, essa idéia de netlogon vem do Windows, pois esse conceito existe também no AD, a idéia é o seguinde o Samba já possui uma configuração padrão que já esta em seu arquivo smb.conf referente ao [netlogon] esse compartilhamento é buscado automaticamente pelas estações WIndows, quando as mesmas fazem parte de um domínio, e elas verificam se existe um script dentro desse compartilhamento com o nome do usuário que esta tentando realizar o logon, caso ela encontre, esse script é executado automaticamente pelo Windows.

Um dos problemas que eu encontro com o Samba é o fato do mesmo não fornecer uma forma de redundância, ou seja, se o meu único servidor Samba que é o autenticado do domínio parar o pessoal na rede não vai conseguir acessar os arquivos que estão dentro das unidades mapeadas pelo Samba e isso se torna um caos na rede, existe formas, que eu chamo de WA (Work Around) um conceito muito utilizado aqui em Santos-SP, que é possível através do RSYNC e alguns outros macetes deixar o Samba redundante, mas não é 100% confiável e eu não gosto muito dessa idéia.

O LDAP é um serviço que o pessoal utiliza para centralizar todos os logins e informações de usuários e utilizam o Samba para consultá-lo, a grande vantagem disso é que o código do LDAP foi criado para trabalhar com redundância, ou seja, posso ter dois, três ou mais servidores LDAP, todos replicando as informações dos usuários e caso o principal pare o Samba realiza a busca para autenticar os usuários em outros servidores LDAP, parece uma coisa simples de configurar, mas já estou trabalhando a seis meses nesse ambiente com o LDAP e posso dizer que estou nos 60% de concluir, assim que terminar, vou publicar aqui.

Não sei se você sabe mais o AD da Microsoft utiliza o protocolo LDAP o mesmo que pretendo integrar com o Samba, só que o AD já esta bastante maduro, o meu objetivo é deixar o Samba de igual para igual com o AD, estou aguardando o Samba versão 4 ficar estavel, pois conversei com o time do Samba e nessa versão parece que ele vai oferecer mais suporte a características que o AD possuí.

[9] Comentário enviado por genixsky em 21/06/2008 - 05:40h

Pessoal, segue o link do VOL que complementa esse artigo:
http://www.vivaolinux.com.br/artigos/verArtigo.php?codigo=8378

[10] Comentário enviado por comfaa em 28/10/2008 - 12:50h

bem legal

[11] Comentário enviado por santosflau em 21/02/2009 - 20:18h

Excelente artigo, esta bem aprecido com meu samba, porem vc tem o mesmo problema de que as estações win 2003, não conseguem puxar a lista de usuarios do sistema?

E por isso no win 2003 eu trabalho com grupo de trabalho.

[12] Comentário enviado por XimenesWambach em 12/06/2009 - 11:23h

Muito bom o artigo
Parabpens

[13] Comentário enviado por emarone em 25/06/2009 - 14:37h

As máquinas da minha rede não estão encontrando o controlador de domínio, esta aparecendo a mensagem que o servidor não pode ser encontrado e foi de repente que isso aconteceu. Será que alguém tem alguma solução para isso.
Desde já obrigado


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts