Integrando Bind com Active Directory (AD)

Neste artigo serão mostradas as regras necessárias no servidor de DNS para possibilitar que um controlador de domínio rodando o Win2000/Win2003 possa trabalhar integrado ao servidor de nomes rodando GNU/Linux.

[ Hits: 39.394 ]

Por: Edson G. de Lima em 07/11/2005


Editando configurações



Metendo a mão na massa!

1) Fique atento, confira se seu backup está feito :)

2) Faça a parada do BIND:

# /etc/init.d/named stop

ou o comando suportado por sua distro.

3) Abra o arquivo named.conf, vamos editá-lo como abaixo. Os registros que já existem podem ser aproveitados, observando-se o detalhe da linha "allow-update", pois normalmente ela não existe.

Logo no início do arquivo, crie uma ACL e faça referência aos servidores com AD:

# ...CABEÇALHO JÁ EXISTENTE...
acl "serv_AD" { 10.0.0.1; 10.0.0.5; };

# Zona primária:
zone "seudominio.com.br" {
type master;
file "/var/named/seudominio.com.br.hosts";
allow-update { serv_AD; };
};

# Zona primária reversa:
zone "0.0.10.in-addr.arpa" {
type master;
file "/var/named/10.0.0.rev";
allow-update { serv_AD; };
};

# As linhas nas Zonas acima são para
# permitir atualizações pelas máquinas mencionadas na ACL.
# A partir desta linha, temos as sub-zonas que serão utilizadas pelo


AD:

zone "_msdcs.seudominio.com.br" {
type master;
file "/var/named/AD/_msdcs.seudominio.com.br";
allow-update { serv_AD; };
};

zone "_sites.seudominio.com.br" {
type master;
file "/var/named/AD/_sites.seudominio.com.br";
allow-update { serv_AD; };
};

zone "_tcp.seudominio.com.br" {
type master;
file "/var/named/AD/_tcp.seudominio.com.br";
allow-update { serv_AD; };
};


zone "_udp.seudominio.com.br" {
type master;
file "/var/named/AD/_udp.seudominio.com.br";
allow-update { serv_AD; };
};

Observemos que foi feito menção ao diretório /var/named/AD, então nosso próximo passo é criar este diretório. Nada impede que os arquivos sejam mapeados no mesmo diretório que a zona primária ou que este diretório tenha outro nome, é apenas por questão de organização. Entretanto este caminho precisará ser informado no named.conf.

Outro detalhe, a ACL também pode ter outro nome, basta modificar o nome entre as chaves depois do "allow-update".

Continuando com a "mão na massa"!

1) Criando o diretório acima:

# mkdir /var/named/AD

2) Vamos para este diretório:

# cd /var/named/AD

3) Os arquivos de registro de recursos (mapas de zonas) que serão criados neste diretório são (o "underline" faz parte do nome do arquivo):
  • _msdcs.seudominio.com.br
  • _sites.seudominio.com.br
  • _tcp.seudominio.com.br
  • _udp.seudominio.com.br

4) Por uma questão de economia, irei mostrar a edição de apenas um dos arquivos, para os outros bastará mudar o nome e adequar com os respectivos mapas.

Edite estes arquivos com o seguinte conteúdo:

# vim /var/named/AD/_msdcs.seudominio.com.br

$ORIGIN .
$TTL 38400 ; 10 hours 40 minutes

_msdcs.seudominio.com.br IN SOA mukata.seudominio.com.br.

adm_linux.seudominio.com.br. (

1121854793 ; serial
10800 ; refresh (3 hours)
3600 ; retry (1 hour)
604800 ; expire (1 week)
38400 ; minimum (10 hours 40 minutes)

)

NS mukata.

$ORIGIN _msdcs.seudominio.com.br.

5) Faça o mesmo com os outros arquivos, mudando apenas o mapeamento.

6) Mude dono e grupo (de modo recursivo) do diretório /var/named/AD para o usuário named:

# chown named -R /var/named/AD
# chgrp named -R /var/named/AD


Preparando-se para "comer o bolo" :))

1) Vamos reiniciar o serviço named:

# /etc/init.d/named start

(ou o comando suportado por sua distro)

2) Verificando as possíveis (indesejáveis) mensagens de erro:

# tail -n 20 /var/log/messages

Tomando o cuidado de observar se as novas zonas foram carregadas com sucesso.

3) Se tudo correu bem, já podemos promover nosso PDC/BDC.

4) Poderemos verificar a integração entre BIND e AD monitorando os logs em tempo real:

# tail -f /var/log/messages

Iremos verificar que aparecerá mensagens referentes às atualizações feitas pelo AD nos arquivos do BIND, com alterações nos arquivos de mapas de zonas.

5) Outro detalhe importante a ser verificado é a criação de arquivos*.jnl com os nomes das sub-zonas. Isto indica que o AD está fazendo as modificações das quais precisa.

Podemos comemorar! Apenas um lembrete:

!! Use Linux, é LEGAL !!

Abraços à todos.
_______
Xxoin
Página anterior    

Páginas do artigo
   1. Informações básicas
   2. Editando configurações
Outros artigos deste autor

Abrindo "passagem" para clientes de correio

Se o Linux fosse uma "marca"

Leitura recomendada

Como configurar o MySQL no Slackware

Gerenciando serviços de sistemas Linux

Acentos corretos no console, PnUP, PnDown, Home End, etc..

Configurando Linux para Desenvolvimento de Sites

Servidor VPN PPTP com autenticação de usuários no Active Directory

  
Comentários
[1] Comentário enviado por neriberto em 08/11/2005 - 07:52h

Caso eu queira dois servidores dns como configurá-lo para autorizar a transferência de zona para o segundo dns ?

[2] Comentário enviado por Xxoin em 09/11/2005 - 01:31h

No arquivo named.conf, dentro da chave options, você coloca o seguinte:

allow-transfer { IP.do.Server.Secund; };

[3] Comentário enviado por neriberto em 09/11/2005 - 07:10h

Só mais uma coisa: Está ótimo o artigo, muito bom,...

[4] Comentário enviado por acocx em 01/12/2005 - 13:15h

Parabéns pelo artigo, é muito útil e objetivo.

[5] Comentário enviado por zedogas em 18/07/2006 - 12:25h

TO instalando uma maquina no LINUX (por exemplor Debian), e quero configurar do ZERO o apt-get com o proxy, beleza;
http://[email protected]:ip:porta nao eh? ENTAO, mas nao vai... TEM COMO INFORMAR UM DOMINIO para o Squid ir lah se autenticar... Do jeito q tah ele pára no proxy (pq nao tem usuario local entende?)

ME AJUDA AE POR FAVOR, como ponho a configuracao no apt-get para entender o proxy q se autentica com usuarios AD? Valeu!

[6] Comentário enviado por Xxoin em 18/07/2006 - 21:43h

Boa noite "zedogas".

Não compreendi muito bem sua pergunta, portanto, caso a resposta não seja o que você está precisando, peço que a desconsidere...

Estou entendendo que você quer utilizar o apt-get de uma máquina que está atrás do "Squid"...

Neste caso, a idéia é que você libere o acesso completo desta máquina, execute o apt-get e verifique os logs de acesso desta máquina naquele horário e depois crie uma acl liberando estes sites/url.

Caso queira, você pode também criar um usuário para teste, com acesso completo, executar o apt-get utilizando este usuário, logar os acesso e depois liberar estes acessos. Se for o caso para todas as máquinas.

[7] Comentário enviado por removido em 14/12/2007 - 09:05h

Ola Xxoin. Olha o meu cenario: Na matriz tenho AD e no mesmo server tenho o DNS, as estacoes apontam pro DNS do AD pra poderem logar. Na filial(interligado por VPN com a matriz) tenho um DNS com o Bind, porem se apontar nas maquinas da filial para o DNS Bind ele nao loga no AD; porem como ja tenho o DNS na filial queria economizar link(usar o BIND local).
Pergunta: Esta sua solucao acima, casaria com o meu problema da filial?

Abraços

[8] Comentário enviado por prgs.linux em 11/01/2008 - 13:21h

Ola tudo bem, tenho uma dulvida: Vc instalou o DNS no 2003 e ele esta sendo seu DNS 1º e o no LINUX seu DNS 2º ????

[9] Comentário enviado por lipecys em 19/03/2008 - 13:44h

Cara, isso mesmo que eu estava precisando.
Vou testar.
Muito obrigado.

[10] Comentário enviado por removido em 31/07/2008 - 15:30h

tenho dois servidores windows(os dois são servidores DNS e replicam o active directory ips 10.0.1.2 e 10.0.1.1) e um linux(firewall+proxy da rede ip 10.0.1.254) e estou querendo deixar o server 10.0.1.2 como dns principal e o linux 10.0.1.254 como alternativo pois estou com problemas de internet e acho que com o linux a resolução de nomes e resposta do proxy vai ficar mais rápida.


então como pode deixaro 10.0.1.2 como principal e o 10.0.1.254 como alternativo na minha rede pois vou ativar isso no DHCP.

OBS.: em encaminhadores nos server windows dns+ad coloquei os ips da embratel. dentro do resolv.conf do linux coloquei os ips da embratel e os ips windows.

[11] Comentário enviado por rengaf1 em 04/08/2013 - 19:23h

blz.. pessoal so nao esqueçam de remover o " $ORIGIN ." dos arquivos. se nao nao funfa!!!!


Contribuir com comentário