Dnsmasq e Active Directory - Redes de PME

Índice geral da série: Redes de computadores para PMEs: introdução

Olá amigos!. Para entender e seguir corretamente este artigo é essencial lendo seus predecessores:

Eles explicam conceitos teóricos e práticos aos quais não nos referiremos neste. Vamos mudar a distribuição no ano atual para Debian 8.6 "Jessie" e continuaremos com os mesmos parâmetros que usamos em BIND e Active Directory®.

  • O procedimento descrito neste artigo também é válido para CentOS 7. O arquivo de configuração / etc / dnsmasq é o mesmo. Eu declaro isso porque considero desnecessário fazer um artigo separado para Dnsmasq e Active Directory® baseado em CentOS. Felizmente, os diretórios relacionados à documentação e configuração são os mesmos. 
  • O Dnsmaq é uma criação de Simon Kelley

Limites no uso de Dnsmasq

Pela sua importância repetimos o LIMITES que suporta o Dnsmasq -run homem dnsmasq- que reflete exactamente seguinte:

LIMITES

  • Os valores padrão para limites de recursos são geralmente conservadores e apropriados para uso em dispositivos do tipo roteador. preso com processadores lentos e pouca memória. Em hardware mais  capaz, é possível aumentar os limites e suportar muitos mais clientes. O seguinte se aplica a dnsmasq-2.37: versões anteriores não eles escalaram tão bem.
  • Dnsmasq é capaz de suportar DNS e DHCP pelo menos mil (1,000) clientes. Os tempos de locação não devem ser muito curtos (menos de um Tempo). O valor de –dns-forward-max pode ser aumentado: comece com o equivalente ao número de clientes e aumentá-lo se o DNS. Observe que o desempenho do DNS também depende dos servidores DNS upstream. O tamanho do cache DNS pode ser aumentado: o limite São necessários 10,000 nomes e o padrão (150) é muito baixo. O envio de um SIGUSR1 para dnsmasq torna a informação bitacore que é Útil para ajustar o tamanho do cache. Consulte a seção NOTAS para obter detalhes.
  • O servidor TFTP embutido é capaz de suportar múltiplas transferências arquivos simultâneos: o limite absoluto está relacionado ao número de manipuladores de arquivos permitidos para um processo e a capacidade do sistemaTem chamada select () para suportar um grande número de identificadores de arquivo. Se o limite for definido muito alto com –tftp-max, ele será redimensionado e o limite real será sincronizado na inicialização. Observe que mais transferências são possíveis quando o mesmo arquivo é enviado e quando cada transferencia envia um arquivo diferente. É possível usar dnsmasq para negar publicidade na Web usando uma lista de servidores de banner bem conhecidos, todos resolvendo para 127.0.0.1 ou 0.0.0.0 em / etc / hosts ou em um arquivo hosts adicional. A lista pode ser muito longo. O Dnsmasq foi testado com sucesso com um milhão de nomes. Esse tamanho de arquivo precisa de uma CPU de 1 GHz e aproximadamente60 MB de RAM.
  • Dnsmasq é capaz de suportar DNS e DHCP pelo menos mil (1,000) clientes.

Vamos instalar e configurar Jessie e Dnsmasq

Começaremos com uma instalação nova e limpa de um servidor baseado em Debian 8 "Jessie". Ou seja, o sistema operacional sem nenhuma interface gráfica ou outro pacote instalado. Os parâmetros da rede serão iguais aos usados ​​no artigo BIND e Active Directory®:

Nome de domínio mordor.fan LAN Network 10.10.10.0/24 ======================================== ================================================== Servidores Endereço IP Objetivo (Servidores com SO Windows) ==================================================== =================================
sauron.mordor.fan. 10.10.10.3 Active Directory® 2008 SR2
mamba.mordor.fan. 10.10.10.4 Servidor de Arquivos Windows
dns.mordor.fan 10.10.10.5 Servidor DnsMasq em Jessie
darklord.mordor.fan. 10.10.10.6 Proxy, gateway e firewall no Kerios troll.mordor.fan. 10.10.10.7 Blog baseado em ... não lembro shadowftp.mordor.fan. 10.10.10.8 Servidor FTP blackelf.mordor.fan. 10.10.10.9 Serviço de e-mail completo blackspider.mordor.fan. 10.10.10.10 Serviço WWW palantir.mordor.fan. 10.10.10.11 Bate-papo no Openfire para Windows Real CNAME ================================== sauron ad-dc mamba fileserver darklord proxyweb troll blog shadowftp ftpserver blackelf mail blackspider www palantir openfire

Configurações iniciais do servidor dns.mordor.fan

root @ dns: ~ # nano / etc / hostname
dns

root @ dns: ~ # nano / etc / hosts
127.0.0.1 localhost 10.10.10.5 dns.mordor.fan dns # As seguintes linhas são desejáveis ​​para hosts compatíveis com IPv6 :: 1 localhost ip6-localhost ip6-loopback ff02 :: 1 ip6-allnodes ff02 :: 2 ip6-allrouters

root @ dns: ~ # nano / etc / network / interfaces
# Este arquivo descreve as interfaces de rede disponíveis em seu sistema # e como ativá-las. Para obter mais informações, consulte interfaces (5). source /etc/network/interfaces.d/* # A interface de rede loopback auto lo iface lo inet loopback # A interface de rede primária allow-hotplug eth0 iface eth0 inet endereço estático 10.10.10.5 máscara de rede 255.255.255.0 rede 10.10.10.0 broadcast 10.10.10.255. 10.10.10.1 gateway 127.0.0.1 # dns- * options são implementadas pelo pacote resolvconf, se instalado dns-nameservers XNUMX dns-search mordor.fan

Vamos instalar o Dnsmasq e o htop

root @ dns: ~ # aptitude install dnsmasq htop

Depois de instalar o pacote htop podemos verificar o consumo de CPU e memória do equipamento. Ele consumia apenas cerca de 71 megabytes de RAM. Se quisermos diminuir ainda mais o consumo, podemos instalar o pacote SSMTP -simples MTA- que, por sua vez, limpa o pacote exim4 que o Debian sempre instala por padrão e que realmente não precisamos de acordo com o uso que daremos a este servidor:

root @ dns: ~ # aptitude install ssmtp
root @ dns: ~ # aptitude purge ~ c
root @ dns: ~ # aptitude clean
root @ dns: ~ # aptitude autoclean
root @ dns: ~ # systemctl reboot

Após reiniciar o computador, o consumo é o seguinte: Dnsmasq e Active Directory

Baixo, certo? Vamos continuar.

Deixe-nos indicar que Dnsmasq também consulte Microsft® DNS

Para testar as possíveis configurações Dnsmasq em seu computador dns.mordor.fan, devemos incluir uma declaração que indique que o DNS da Microsoft do servidor é consultado sauron.mordor.fan. Podemos fazer isso incluindo a diretiva server = / mordor.fan / 10.10.10.3 no arquivo dnsmasq.conf -como veremos mais tarde- ou adicionando a linha 10.10.10.3 nameserver no arquivo / Etc / resolv.conf. Como ainda não configuramos o Dnsmasq de acordo com nossas necessidades, escolhemos a segunda forma:

root @ dns: ~ # nano /etc/resolv.conf
domínio mordor.fan
127.0.0.1 nameserver
10.10.10.3 nameserver

Agora podemos resolver consultas DNS

Com a configuração padrão do Dnsmasq fornecida por seu arquivo principal /etc/dnasmq.conf, e com o que está declarado no arquivo / Etc / resolv.conf do próprio servidor «dns«, Qualquer cliente conectado à LAN - e que tenha declarado como servidor DNS dns.mordor.fan- você pode resolver consultas DNS às custas do DNS da Microsoft® por agora…

  • É muito importante verificar a velocidade de resposta do Dnsmasq ao mostrar seu status como Encaminhadores pela mera inclusão do IP 10.10.10.3 em seu arquivo / Etc / resolv.conf.

De minha estação de trabalho administrativa e suporte de toda a parafernália pela qual escrevo, corro:

buzz @ sysadmin: ~ $ cat /etc/resolv.conf 
# Gerado por NetworkManager domain mordor.fan nameserver 10.10.10.5

buzz @ sysadmin: ~ $ nslookup
> dns
Servidor: 10.10.10.5 Endereço: 10.10.10.5 # 53 Nome: dns.mordor.fan Endereço: 10.10.10.5

> sauron
Servidor: 10.10.10.5 Endereço: 10.10.10.5 # 53

Resposta não autorizada:
Nome: sauron.mordor.fan Endereço: 10.10.10.3

> 03296249-82a1-49aa-a4f0-28900f5d256b._msdcs.mordor.fan
Servidor: 10.10.10.5 Endereço: 10.10.10.5 # 53 03296249-82a1-49aa-a4f0-28900f5d256b._msdcs.mordor.fan nome canônico = sauron.mordor.fan. Nome: sauron.mordor.fan Endereço: 10.10.10.3

> 10.10.10.3
Servidor: 127.0.0.1 Endereço: 127.0.0.1 # 53 3.10.10.10.in-addr.arpa name = sauron.mordor.fan.

> 10.10.10.9
Servidor: 127.0.0.1 Endereço: 127.0.0.1 # 53 9.10.10.10.in-addr.arpa name = blackelf.mordor.fan.

> 10.10.10.5
Servidor: 127.0.0.1 Endereço: 127.0.0.1 # 53 5.10.10.10.in-addr.arpa name = dns.mordor.fan.

> mail
Servidor: 10.10.10.5 Endereço: 10.10.10.5 # 53 Resposta não autorizada: mail.mordor.fan nome canônico = blackelf.mordor.fan. Nome: blackelf.mordor.fan Endereço: 10.10.10.9> saída

buzz @ sysadmin: ~ $

Vamos dar uma olhada nos seguintes aspectos:

  • dns.mordor.fan responde diretamente às consultas DNS que podem ser resolvidas de acordo com as configurações atuais do Dnsmasq. Se você não consegue resolvê-los, funciona como Encaminhadores e pergunta ao IP 10.10.10.3 se ele pode responder à consulta. Quando perguntado sobre o IP do equipamento «dns«, Ele responde diretamente. Quando o Dnsmasq é questionado sobre quem é «sauron",?, faço encaminhando para 10.10.10.3 -Você não pode responder diretamente porque ainda não o registrou- quem retorna uma Resposta Não-Autoritária correta.
  • Quando perguntado quem é «03296249-82a1-49aa-a4f0-28900f5d256b._msdcs.mordor.fan"?, faço encaminhando novamente e desta vez você receberá uma resposta autoritativa do DNS da Microsoft®.
  • A alta velocidade de resposta do Dnsmasq para qualquer tipo de consulta.

São pequenos detalhes que tornam um amor ótimo ;-).

Diferenças fundamentais entre Dnsmasq e BIND integrados com um Active Directory®

Vamos executar algumas consultas DNS nos registros SOA y NS do domínio mordor.fan, para cada um dos servidores de nomes envolvidos:

buzz @ sysadmin: ~ $ host -t SOA mordor.fan 10.10.10.3
Usando o servidor de domínio: Nome: 10.10.10.3 Endereço: 10.10.10.3 # 53 Aliases: 
mordor.fan tem registro SOA sauron.mordor.fan. hostmaster.mordor.fan. 56 900 600 86400 3600 XNUMX

buzz @ sysadmin: ~ $ host -t SOA mordor.fan 10.10.10.5
Usando o servidor de domínio: Nome: 10.10.10.5 Endereço: 10.10.10.5 # 53 Aliases: 
mordor.fan tem registro SOA sauron.mordor.fan. hostmaster.mordor.fan. 56 900 600 86400 3600 XNUMX

buzz @ sysadmin: ~ $ host -t NS mordor.fan 10.10.10.5
Usando o servidor de domínio: Nome: 10.10.10.5 Endereço: 10.10.10.5 # 53 Aliases: 
servidor de nomes mordor.fan sauron.mordor.fan.

buzz @ sysadmin: ~ $ host -t NS mordor.fan 10.10.10.3
Usando o servidor de domínio: Nome: 10.10.10.3 Endereço: 10.10.10.3 # 53 Aliases: 
servidor de nomes mordor.fan sauron.mordor.fan.

As respostas são idênticas - o que é lógico - porque sempre responder sauron.mordor.fan. antes de uma consulta DNS sobre registros SOA o NS, Embora parece o que ele responde dns.mordor.fan. No entanto, é diferente do que é visto no artigo BIND e Active Directory® onde removemos completamente a funcionalidade do DNS da Microsoft®. Nesse artigo TODAS as consultas DNS sobre o namespace Domino mordor.fan O BIND respondeu, porque o configuramos dessa forma e porque o BIND responde a consultas SOA y NS além de permitir o esquema Senhor de escravos, Transferência de zona, etc. e, portanto, é um servidor DNS mais completo - complexo.

Talvez essas sejam as principais diferenças entre o DNS do Dnsmasq e do BIND ... mas BIND - sempre pode haver um ou mais buts - não tem um servidor DHCP que se integra perfeitamente com um servidor DNS em um único Daemonde sem a necessidade de chaves TSIG, arquivos de configuração, bancos de dados de zona, etc., como vimos em artigos anteriores.

  • Acho que agora, Caros Leitores, já devem ter percebido que não odeio o BIND ou prefiro o Dnsmasq ao BIND. Discussões futuras sobre o assunto são uma total perda de tempo, pois tem muito a ver com necessidades, demandas, gostos, preferências e .... cada solução tem seu charme ;-).
  • Em cenários semelhantes, deixe que todos instalem e configurem o software de sua escolha e sobre o qual saibam mais. e que tudo funciona como esperado.

Vantagens da combinação Dnsmasq + Active Directory®

Com essa combinação, temos uma gama completa de respostas às consultas DNS e um meio eficiente de alugar endereços IP para nossa SME LAN. Como veremos mais adiante, ele funciona corretamente para qualquer situação em que o computador esteja ou não associado ao Controlador de Domínio Microsoft® Active Directory®. Além disso, temos um servidor DNS e DNS Encaminhadores por excelência, além de um servidor DHCP muito rápido. E tudo com pouca demanda de recursos. Você quer mais?

É possível Dnsmasq + BIND?

Definitivamente sim. Embora eu recomende que sejam instalados em computadores diferentes para que não haja conflitos devido à tão amada porta 53 do serviço DNS. Talvez veremos algo sobre isso quando chegarmos ao AD-DC baseado em Samba 4. Quem sabe?

Dicas sobre Dnamasq

  • Os arquivos de trabalho essenciais para Dnsmasq fornecer serviços DHCP e DNS em uma LAN são: /etc/dnsmasq.conf, / Etc / hosts, /var/lib/misc/dnsmasq.leasese / Etc / resolv.conf. O arquivo dnsmasq.leases ele é criado quando você aluga seu primeiro endereço IP.
  • Outro arquivo de trabalho que você pode usar é / etc / ethers. Se tal arquivo existir, a diretiva éteres de leitura declarado no arquivo de configuração, diz ao Dnsmasq para lê-lo. É muito útil quando nos relacionamos Endereços MAC / nomes de host para determinados fins.
  • O serviço DNS pode ser completamente desabilitado usando a diretiva port = 0 no dnsmasq.conf.
  • O serviço DHCP para uma ou mais interfaces de rede pode ser desativado pelas diretivas -uma para cada linha- no-dhcp-interface = eth0, no-dhcp-interface = eth1, e assim por diante. Muito útil quando nos deparamos com um computador com 2 ou mais interfaces de rede e queremos que o serviço DHCP seja fornecido por apenas uma delas ou por nenhuma. Claro, se desabilitarmos o serviço DHCP em todas as interfaces, deixaremos apenas o serviço DNS em execução. Se desabilitarmos ambos os serviços, por que precisamos do Dnsmasq? 
  • Declarar a outros servidores de nomes de domínio DNS que não são públicos ou externos à LAN - como no caso do DNS da Microsoft - fazemos isso por meio da diretiva servidor = / nome de domínio / IP do servidor DNS no arquivo /etc/dnsmasq.conf. Exemplo: server = / mordor.fan / 10.10.10.3.
  • Para dizer ao Dnsmasq que as consultas sobre domínios locais são respondidas apenas a partir do arquivo / Etc / hosts ou através do seu DHCP, devemos adicionar a diretiva local = / localnet / no arquivo principal de sua configuração. Exemplo: local = / mordor.fan /.
  • Para configurar corretamente o arquivo / Etc / resolv.conf - resolver sugerimos ler seu manual usando o comando homem resolv.conf. Se você instalar o Debian 8.6 "Jessie", verá que está bem escrito em espanhol.
  • O Dnsmasq não usa arquivos de zonas para responder a consultas diretas ou reversas.
  • Para saber o significado de cada campo «especial»Que é usado na declaração de um Registro de Recurso SRV, você deve consultar BIND e Active Directory®. A sintaxe dos registros SRV no arquivo /etc/dnsmasq.conf É o seguinte:
    srv-host = , , , ,

Leitores que desejam saber mais, por favor, leia o arquivo original com atenção /etc/dnsmasq.conf ou documentos existentes no diretório / usr / share / doc / dnsmasq-base.

root @ dns: ~ # ls -l / usr / share / doc / dnsmasq-base /
total 128 -rw-r - r-- 1 root 883 5 de maio de 2015 copyright -rw-r - r-- 1 root root 36261 5 2015 de maio de 1 changelog.archive.gz -rw-r - r-- 11297 root root 5 2015 de maio de 1 changelog.Debian.gz -rw-r - r-- 26014 root root 5 2015 de maio de 1 changelog.gz -rw-r - r-- 2084 root 5 2015 de maio de 1 DBus-interface. gz -rw-r - r-- 4297 root root 5 2015 de maio de 2 doc.html drwxr-xr-x 4096 root root 19 Fev 17 52:1 exemplos -rw-r - r-- 9721 root root 5 2015 de maio 1 FAQ.gz -rw-r - r-- 4180 root 5 2015 de maio de 1 README.Debian -rw-r - r-- 12019 root 5 2015 de maio de XNUMX setup.html

Vamos configurar Dnsmasq e Resolver

Tomaremos como um guia inicial - mudar nomes e assim por diante, é claro - o arquivo de configuração usado no artigo «Dnsmasq no CentOS 7.3".

Não vamos esquecer a próxima etapa:

[root @ dns ~] # mv /etc/dnsmasq.conf /etc/dnsmasq.conf.original

Endereços IP fixos

Os endereços dos servidores ou equipamentos que requerem um IP fixo - ambos IPv4 como IPv6- são declarados no arquivo / Etc / hosts:

[root @ dns ~] # nano / etc / hosts
127.0.0.1 localhost # As seguintes linhas são desejáveis ​​para hosts compatíveis com IPv6 :: 1 localhost ip6-localhost ip6-loopback ff02 :: 1 ip6-allnodes ff02 :: 2 ip6-allrouters # Servidores e computadores com IPs fixos. 10.10.10.1 sysadmin.mordor.fan 10.10.10.3 sauron.mordor.fan 10.10.10.4 mamba.mordor.fan 10.10.10.5 dns.mordor.fan 10.10.10.6 darklord.mordor.fan 10.10.10.7 troll.mordor.fan 10.10.10.8. 10.10.10.9 shadowftp.mordor.fan 10.10.10.10 blackelf.mordor.fan 10.10.10.11 blackspider.mordor.fan XNUMX palantir.mordor.fan

Vamos criar o arquivo /etc/dnsmasq.conf

[root @ dns ~] # nano /etc/dnsmasq.conf# ------------------------------------------------- ------------------ # OPÇÕES GERAIS # ----------------------------- -------------------------------------- domain-needed # Não passe nomes sem a parte do domínio bogus-priv # Não transmita endereços em espaço não roteado expand-hosts # Adiciona domínio automaticamente à interface de host = eth0 # Interface. CUIDADO com a interface # except-interface = eth1 # NÃO escute esta ordem estrita de NIC # Ordem em que você consulta o arquivo /etc/resolv.conf # Inclui muitas outras opções de configuração # através de um arquivo ou localizando os arquivos de configuração # adicional em um diretório # conf-file = / etc / dnsmasq.more.conf conf-dir = / etc / dnsmasq.d # Relacionado ao nome de domínio domain = mordor.fan # Domain Name # Time Server é 10.10.10.1. 10.10.10.1 endereço = / time.windows.com / XNUMX # Envia uma opção vazia do valor WPAD. Necessário para o # Windos 7 e os clientes posteriores se comportarem corretamente. ;-) dhcp-option = 252, "\ n" # Arquivo onde declararemos os HOSTS que serão "banidos" addn-hosts = / etc / banner_add_hosts # Consulte o servidor DNS da Microsoft® "sauron" se # o deixarmos executar server = / mordor.fan / 10.10.10.3 # Consultas sobre domínios locais serão respondidas # de / etc / hosts ou através de DHCP local = / mordor.fan / # Consultas sobre PTR ou registros reversos serão respondidas # pelos servidores "dns" e "sauron" nessa ordem server = / 10.10.10.in-addr.arpa / 10.10.10.5 server = / 10.10.10.in-addr.arpa / 10.10.10.3 # ------- -------------------------------------------------- ---------- # REGISTROSCNAMEMXTXT # ------------------------------------- ------------------------------ # Este tipo de registro requer uma entrada # no arquivo / etc / hosts #, por exemplo: 10.10.0.7 troll.mordor.fan troll # cname = ALIAS, REAL_NAME cname = ad-dc.mordor.fan, sauron.mordor.fan cname = fileserver.mordor.fan, mamba.mordor.fan cname = proxyweb.mordor.fan , darklord.mordor.fan cname = blog.mordor .fan, troll.mordor.fan cname = ftpserver.mordor.fan, shadowftp.mordor.fan cname = mail.mordor.fan, blackelf.mordor.fan cname = www.mordor.fan, blackspider.mordor.fan cname = opendire .mordor.fan, palantir.mordor.fan # MX RECORDS # Retorna um registro MX com o nome "mordor.fan" destinado # para a equipe blackelf.mordor.fan e prioridade de 10 mx-host = mordor.fan, mail. mordor.fan, 10 # O destino padrão para registros MX que são criados # usando a opção localmx será: mx-target = mail.mordor.fan # Retorna um registro MX apontando para mx-target para TODAS # máquinas localmx locais # Registros TXT. Também podemos declarar um registro SPF: txt-record=mordor.fan,"v=spf1 a -all" txt-record=mordor.fan,"Bem-vindo à Terra Sombria de Mordor" # ------------------------------------------------------------------- # ------------------------------------------------------------------- # INTERVALO E SUAS OPÇÕES # ------------------------------------------------------------------- # Intervalo IPv4 e Tempo de Concessão # 1 a 29 são para Servidores e outras necessidades dhcp-range=10.10.10.30,10.10.10.250,8hdhcp-lease-max = 222 # Número máximo de endereços para alugar
                        # por padrão é 150
# IPV6 Range # dhcp-range = 1234 ::, ra-only # Opções para RANGE # OPTIONS dhcp-option = 1,255.255.255.0 # NETMASK dhcp-option = 3,10.10.10.253 # ROUTER GATEWAY dhcp-option = 6,10.10.10.5 .15 # Servidores DNS dhcp-option = 19,1, mordor.fan # Nome de Domínio DNS dhcp-option = 28,10.10.10.255 # opção ip-forwarding ON dhcp-option = 42,10.10.10.1 # BROADCAST dhcp-option = 40. 41,10.10.10.3 # NTP # dhcp-option = 44,10.10.10.3, MORDOR # NIS Domain Name # dhcp-option = 45,10.10.10.3 # Servidor NIS # dhcp-option = 73,10.10.10.3 # WINS # dhcp-option = 46,8 # NetBIOS datagramas # dhcp-option = XNUMX # Servidor de dedo # dhcp-option = XNUMX # NetBIOS node dhcp-authoritative # DHCP autorizado na sub-rede # ------------- -------------------------------------------------- ---- # --------------------------------------------- ---------------------- # LOGGING tail -f / var / log / syslog ou journalctl -f # ------------ -------------------------------------------------- ----- log-queries # ----------------------------------------- -------------------------- # Re Registros A e SRV correspondentes ao Active Directory # ----------------------------------------- --------------------------
#A Registros
endereço = / gc._msdcs.mordor.fan / 10.10.10.3 endereço = / DomainDnsZones.mordor.fan / 10.10.10.3 endereço = / ForestDnsZones.mordor.fan / 10.10.10.3

# Registro CNAME da Zona DNS da Microsoft _msdcs.mordor.fan
cname=03296249-82a1-49aa-a4f0-28900f5d256b._msdcs.mordor.fan,sauron.mordor.fan

# registros SRV
# srv-host = , , , ,

# Catálogo Global # Zona DNS da Microsoft _msdcs.mordor.fan
srv-host = _ldap._tcp.gc._msdcs.mordor.fan, sauron.mordor.fan, 3268,0,0 srv-host = _ldap._tcp.Default-First-Site-Name._sites.gc._msdcs.mordor .fan, sauron.mordor.fan, 3268,0,0
# Microsoft DNS zone mordor.fan
srv-host = _gc._tcp.mordor.fan, sauron.mordor.fan, 3268,0,0 srv-host = _gc._tcp.Default-First-Site-Name._sites.mordor.fan, sauron.mordor.fan .3268,0,0

# Modificado e LDAP privado de um Active Directory
# Microsoft DNS zone _msdcs.mordor.fan
srv-host=_ldap._tcp.Default-First-Site-Name._sites.dc._msdcs.mordor.fan,sauron.mordor.fan,389,0,0
srv-host=_ldap._tcp.dc._msdcs.mordor.fan,sauron.mordor.fan,389,0,0
srv-host=_ldap._tcp.18d3360d-8fdb-40cf-a678-d7c420b6d775.domains._msdcs.mordor.fan,sauron.mordor.fan,389,0,0
srv-host=_ldap._tcp.pdc._msdcs.mordor.fan,sauron.mordor.fan,389,0,0
# Microsoft DNS zone mordor.fan
srv-host=_ldap._tcp.mordor.fan,sauron.mordor.fan,389,0,0
srv-host=_ldap._tcp.Default-First-Site-Name._sites.DomainDnsZones.mordor.fan,sauron.mordor.fan,389,0,0
srv-host=_ldap._tcp.DomainDnsZones.mordor.fan,sauron.mordor.fan,389,0,0
srv-host=_ldap._tcp.Default-First-Site-Name._sites.mordor.fan,sauron.mordor.fan,389,0,0
srv-host=_ldap._tcp.Default-First-Site-Name._sites.ForestDnsZones.mordor.fan,sauron.mordor.fan,389,0,0
srv-host=_ldap._tcp.ForestDnsZones.mordor.fan,sauron.mordor.fan,389,0,0

#
# KERBEROS modificado e privado de um Active Directory
srv-host=_kerberos._tcp.Default-First-Site-Name._sites.mordor.fan,sauron.mordor.fan,88,0,0
srv-host=_kerberos._tcp.mordor.fan,sauron.mordor.fan,88,0,0
srv-host=_kpasswd._tcp.mordor.fan,sauron.mordor.fan,464,0,0
srv-host=_kerberos._udp.mordor.fan,sauron.mordor.fan,88,0,0
srv-host=_kpasswd._udp.mordor.fan,sauron.mordor.fan,464,0,0

# END do arquivo /etc/dnsmasq.conf
# ------------------------------------------------- ------------------

Vamos criar o arquivo / etc / banner_add_host

[root @ dns ~] # nano / etc /banner_add_hosts
127.0.0.1 windowsupdate.com 127.0.0.1 ctldl.windowsupdate.com 127.0.0.1 ocsp.verisign.com 127.0.0.1 csc3-2010-crl.verisign.com 127.0.0.1 www.msftncsi.com 127.0.0.1 ipv6.msftncsi.com 127.0.0.1 teredo.ipv6.microsoft.com 127.0.0.1 ds.download.windowsupdate.com 127.0.0.1 download.microsoft.com 127.0.0.1 fe2.update.microsoft.com 127.0.0.1 crl.microsoft.com 127.0.0.1 www .download.windowsupdate.com 127.0.0.1 win8.ipv6.microsoft.com 127.0.0.1 spynet.microsoft.com 127.0.0.1 spynet1.microsoft.com 127.0.0.1 spynet2.microsoft.com 127.0.0.1 spynet3.microsoft.com 127.0.0.1. 4 spynet127.0.0.1.microsoft.com 5 spynet127.0.0.1.microsoft.com 15 office127.0.0.1client.microsoft.com 127.0.0.1 addons.mozilla.org XNUMX crl.verisign.com

[root @ dns ~] # dnsmasq --test
dnsmasq: verificação de sintaxe OK.

[root @ dns ~] # systemctl restart dnsmasq.service 
[root @ dns ~] # systemctl status dnsmasq.service

Vamos modificar o arquivo /etc/resolv.conf - Resolver

root @ dns: ~ # nano /etc/resolv.conf 
domain mordor.fan search mordor.fan

Por que não temos as linhas usuais declaradas no arquivo resolver.conf? Porque nós declaramos no dnsmasq.conf as seguintes diretrizes:

# Consulte o servidor DNS da Microsoft® "sauron" se # o deixarmos funcionar
server = / mordor.fan / 10.10.10.3

# Consultas sobre domínios locais serão respondidas # de / etc / hosts ou via DHCP
local = / mordor.fan /

# Consultas sobre PTR ou registros reversos serão respondidas # pelos servidores "dns" e "sauron" nessa ordem
server = / 10.10.10.in-addr.arpa / 10.10.10.5 server = / 10.10.10.in-addr.arpa / 10.10.10.3

Consultas de sysadmin.mordor.fan

O arquivo / Etc / resolv.conf desta equipe é:

buzz @ sysadmin: ~ $ cat /etc/resolv.conf
# Gerado por NetworkManager search mordor.fan nameserver 10.10.10.5
buzz @ sysadmin: ~ $ host -t Para spynet4.microsoft.com
spynet4.microsoft.com tem o endereço 127.0.0.1

buzz @ sysadmin: ~ $ host -t Para www.download.windowsupdate.com
www.download.windowsupdate.com tem o endereço 127.0.0.1

zumbido@sysadmin: ~ $ dig dns
buzz @ sysadmin: ~ $ dig dns.mordor.fan
;; SEÇÃO DE PERGUNTAS :; dns.mordor.fan. EM UM ;; SEÇÃO DE RESPOSTA: dns.mordor.fan. 0 IN A 10.10.10.5

buzz @ sysadmin: ~ $ host -t SRV _ldap._tcp.gc._msdcs
buzz @ sysadmin: ~ $ host -t SRV _ldap._tcp.gc._msdcs.mordor.fan
_ldap._tcp.gc._msdcs.mordor.fan tem registro SRV 0 0 3268 sauron.mordor.fan.

buzz @ sysadmin: ~ $ dig _ldap._tcp.gc._msdcs.mordor.fan
;; SEÇÃO DE PERGUNTAS :; _ldap._tcp.gc._msdcs.mordor.fan. EM UM ;; SEÇÃO DE RESPOSTAS: _ldap._tcp.gc._msdcs.mordor.fan. 0 IN A 10.10.10.3

buzz @ sysadmin: ~ $ dig mordor.fan axfr
buzz @ sysadmin: ~ $ dig 10.10.10.in-addr.arpa axfr

E dessa forma, quantas consultas precisamos

Dnsmasq + Active Directory® + Microsoft® Windows Clients

Renomeando um cliente Microsoft® Windows

sete.mordor.fan endereço IP alugado:

root @ dns: ~ # cat /var/lib/misc/dnsmasq.leases 
1488006009 00:0c:29:d6:14:36 10.10.10.115 seven 01:00:0c:29:d6:14:36

Vamos renomear o «Sete»-Que não está associado ao domínio do Active Directory- por«eucalipto«. Após a mudança e o reinício, verificamos:

root @ dns: ~ # cat /var/lib/misc/dnsmasq.leases 
1488006633 00:0c:29:d6:14:36 10.10.10.115 eucaliptus 01:00:0c:29:d6:14:36

O histórico das mudanças pode ser visto em "sysadmin":

buzz @ sysadmin: ~ $ host -t A seven
seven.mordor.fan tem o endereço 10.10.10.115

Após a mudança de nome

buzz @ sysadmin: ~ $ host -t A seven
sete não tem nenhum registro A

buzz @ sysadmin: ~ $ host -t A eucaliptus
eucaliptus.mordor.fan tem o endereço 10.10.10.115

Consultas do cliente eucaliptus.mordor.fan

Microsoft Windows [Versão 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. Todos os direitos reservados.

C: \ Usuários \ buzz> nslookup
Servidor padrão: dns.mordor.fan Endereço: 10.10.10.5

> sauron
Servidor: dns.mordor.fan Endereço: 10.10.10.5 Nome: sauron.mordor.fan Endereço: 10.10.10.3

> mordor.fan
Servidor: dns.mordor.fan Endereço: 10.10.10.5 Nome: mordor.fan Endereço: 10.10.10.3

> eucalipto
Servidor: dns.mordor.fan Endereço: 10.10.10.5 Nome: eucaliptus.mordor.fan Endereço: 10.10.10.115

> 03296249-82a1-49aa-a4f0-28900f5d256b._msdcs.mordor.fan
Servidor: dns.mordor.fan Endereço: 10.10.10.5 Nome: sauron.mordor.fan Endereço: 10.10.10.3 Aliases: 03296249-82a1-49aa-a4f0-28900f5d256b._msdcs.mordor.fan

> definir tipo = SRV
> _kerberos._udp.mordor.fan
Servidor: dns.mordor.fan Endereço: 10.10.10.5 _kerberos._udp.mordor.fan Local do serviço SRV: prioridade = 0 peso = 0 porta = 88 svr hostname = sauron.mordor.fan sauron.mordor.fan endereço de internet = 10.10.10.3. XNUMX

> _ldap._tcp.18d3360d-8fdb-40cf-a678-d7c420b6d775.domains._msdcs.mordor.fan
Servidor: dns.mordor.fan Endereço: 10.10.10.5 _ldap._tcp.18d3360d-8fdb-40cf-a678-d7c420b6d775.domains._msdcs.mordor.fan Local do serviço SRV: prioridade = 0 peso = 0 porta = 389 svr hostname = sauron .mordor.fan sauron.mordor.fan endereço de internet = 10.10.10.3

> sair

C: \ Usuários \ buzz>

Registro de clientes Windows no Microsoft® DNS

Clientes Windows não associados ao domínio Active Directory®

Devemos verificar se os endereços IP alugados pelos diferentes clientes Windows do Dnsmasq estão corretamente registrados no DNS da Microsoft®. Pode influenciar a maneira como ativamos as atualizações dinâmicas - Atualizações dinâmicas nas zonas DNS da Microsoft® do Active Directory®. Começamos com a configuração padrão do DNS da Microsoft, que permite apenas atualizações dinâmicas seguras - Atualizações dinâmicas -> Seguro apenas, em cada uma de suas zonas.

Observe que o cliente com o atual FQDN eucalipto.mordor.fan não está anexado ao domínio Active Directory (ou um Samba4 AD-DC) e é uma exceção à regra da Microsoft de que «Somente clientes registrados em Meu Domínio terão permissão através do Mecanismo de Atualização -que eu só sei- para se cadastrar em Meu DNS«. Felizmente, o Samba4 AD-DC nos ensina algo sobre isso.

eucalipto.mordor.fan IP alugado 10.10.10.115:

buzz @ sysadmin: ~ $ host -t A eucaliptus
eucaliptus.mordor.fan tem o endereço 10.10.10.115

Vamos mudar seu nome para «mogno«, Vamos reiniciar o Windows 7 e ver o que acontece quando pedimos os nomes«eucalipto"E"mogno»Para cada um dos DNS, primeiro para Microsoft DNS e depois para Dnsmasq:

buzz @ sysadmin: ~ $ host -t A eucaliptus.mordor.fan 10.10.10.3
Usando o servidor de domínio: Nome: 10.10.10.3 Endereço: 10.10.10.3 # 53 Aliases: 

Host eucaliptus.mordor.fan não encontrado: 3 (NXDOMAIN)

buzz @ sysadmin: ~ $ host -t A mahogany.mordor.fan 10.10.10.3
Usando o servidor de domínio: Nome: 10.10.10.3 Endereço: 10.10.10.3 # 53 Aliases: 

Host mahogany.mordor.fan não encontrado: 3 (NXDOMAIN)

buzz @ sysadmin: ~ $ host -t A eucaliptus.mordor.fan 10.10.10.5
Usando o servidor de domínio: Nome: 10.10.10.5 Endereço: 10.10.10.5 # 53 Aliases: 

Host eucaliptus.mordor.fan não encontrado: 3 (NXDOMAIN)

buzz @ sysadmin: ~ $ host -t A mahogany.mordor.fan 10.10.10.5
Usando o servidor de domínio: Nome: 10.10.10.5 Endereço: 10.10.10.5 # 53 Aliases: 

mahogany.mordor.fan tem o endereço 10.10.10.115

Podemos mudar o nome do cliente Windows 7 que não está anexado ao domínio mordor.fan do Active Directory® quantas vezes quisermos, que o DNS da Microsoft® não fique sabendo dessas alterações ou que esse cliente exista. É possível que seja apenas porque selecionamos a opção  Atualizações dinâmicas -> Seguro apenas em cada zona do DNS Micorosft?.

Para que o Sr. Microsoft® DNS saiba sobre as mudanças, devemos selecionar Atualizações dinâmicas -> Não seguro e seguro. Esta opção, Caros Leitores, implica uma vulnerabilidade significativa da segurança de qualquer Servidor de Nomes de Domínio que seja respeitado, seja ele Microsft® ou UNIX® / Linux. O DNS da Microsoft® alerta sobre a vulnerabilidade porque no final não é nada mais do que um BIND modificado e privatizado para nos oferecer «Segurança para as trevas«. Se não, por que você recomenda economizar no seu famoso Registrar todas as configurações e registros DNS de seu DNS da Microsoft® quando estamos implementando um Active Directory®? Além de oferecer suporte a atualizações não seguras para Microsoft® DNS, a seguinte modificação é necessária na configuração da placa de rede do cliente Windows 7:

Vamos checar:

buzz @ sysadmin: ~ $ host -t A mahogany.mordor.fan 10.10.10.3
Usando o servidor de domínio: Nome: 10.10.10.3 Endereço: 10.10.10.3 # 53 Aliases: caoba.mordor.fan tem o endereço 10.10.10.115

buzz @ sysadmin: ~ $ host 10.10.10.115 10.10.10.3
Usando o servidor de domínio: Nome: 10.10.10.3 Endereço: 10.10.10.3 # 53 Aliases: 115.10.10.10.in-addr.arpa ponteiro de nome de domínio mahogany.mordor.fan.

buzz @ sysadmin: ~ $ host -t A mogno 10.10.10.5
Usando o servidor de domínio: Nome: 10.10.10.5 Endereço: 10.10.10.5 # 53 Aliases: caoba.mordor.fan tem o endereço 10.10.10.115

buzz @ sysadmin: ~ $ host 10.10.10.115 10.10.10.5
Usando o servidor de domínio: Nome: 10.10.10.5 Endereço: 10.10.10.5 # 53 Aliases: 115.10.10.10.in-addr.arpa ponteiro de nome de domínio mahogany.mordor.fan.

Agora sim. Que ótimo sincronismo para dois servidores DNS não sincronizados de forma alguma!

Clientes Windows ingressados ​​no domínio Active Directory®

Vamos unir o cliente mogno.mordor.fan ao Domínio, mas não sem antes eliminar a modificação que fizemos na configuração da sua placa de rede, se em algum momento o fizemos para verificar o ponto do capítulo anterior. Exclua também a entrada para «mogno»Na Microsoft® DNS, e devolver as atualizações dinâmicas ao seu ponto de origem de «Seguro apenas«. Aliás, é válido reiniciar o serviço Microsoft® DNS.

Depois de aderir ao Domínio, e apesar de todos os nossos esforços, o cliente «mogno»Não está registrado no DNS da Microsoft®. Nós até declaramos no dnsmasq.conf -temporal- que o primeiro servidor DNS é 10.10.10.3.

Microsoft Windows [Versão 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. Todos os direitos reservados.

C: \ Users \ saruman> ipconfig / all

Nome do host de configuração de IP do Windows. . . . . . . . . . . . : Sufixo DNS primário MAHOGANY. . . . . . . : Tipo de nó mordor.fan. . . . . . . . . . . . : Roteamento de IP híbrido ativado. . . . . . . . : Nenhum proxy WINS ativado. . . . . . . . : Nenhuma lista de pesquisa de sufixo DNS. . . . . . : mordor.fan adaptador Ethernet Conexão local: Sufixo DNS específico da conexão. : mordor.fan Descrição. . . . . . . . . . . : Endereço físico da conexão de rede Intel (R) PRO / 1000 MT. . . . . . . . . : 00-0C-29-D6-14-36 DHCP ativado. . . . . . . . . . . : Sim Autoconfiguração habilitada. . . . : Sim Endereço IPv6 local de link. . . . . : fe80 :: 352a: b954: 7eba: 963e% 12 (preferido) Endereço IPv4. . . . . . . . . . . : 10.10.10.115 (Preferencial) Máscara de sub-rede. . . . . . . . . . . : 255.255.255.0 Locação obtida. . . . . . . . . . : Sábado, 25 de fevereiro de 2017 8:19:05 AM contrato expira. . . . . . . . . . : Sábado, 25 de fevereiro de 2017 4:20:36 PM Gateway padrão. . . . . . . . . : 10.10.10.253 Servidor DHCP. . . . . . . . . . . : 10.10.10.5 DHCPv6 IAID. . . . . . . . . . . : 251661353 DUID do cliente DHCPv6. . . . . . . . : 00-01-00-01-20-3B-69-81-00-0C-29-D6-14-36

   Servidores DNS. . . . . . . . . . . : 10.10.10.3
                                       10.10.10.5
   NetBIOS sobre Tcpip. . . . . . . . : Adaptador de túnel ativado isatap.mordor.fan: Estado da mídia. . . . . . . . . . . : Sufixo DNS específico da conexão de mídia desconectada. : mordor.fan Descrição. . . . . . . . . . . : Endereço físico do adaptador Microsoft ISATAP. . . . . . . . . : 00-00-00-00 - E00 DHCP ativado. . . . . . . . . . . : Nenhuma configuração automática habilitada. . . . : Sim Adaptador de túnel Conexão local * 00: Estado da mídia. . . . . . . . . . . : Sufixo DNS específico da conexão de mídia desconectada. : Descrição. . . . . . . . . . . : Endereço físico do adaptador de encapsulamento Microsoft Teredo. . . . . . . . . : 00-0-9-00 - E00 DHCP ativado. . . . . . . . . . . : Nenhuma configuração automática habilitada. . . . : E isso é

C: \ Usuários \ saruman>

buzz @ sysadmin: ~ $ host -t A mahogany.mordor.fan 10.10.10.3
Usando o servidor de domínio: Nome: 10.10.10.3 Endereço: 10.10.10.3 # 53 Aliases: Host caoba.mordor.fan não encontrado: 3 (NXDOMAIN)

zumbido@sysadmin: ~ $ host -t Para mahogany.mordor.fan
mahogany.mordor.fan tem o endereço 10.10.10.115
  • A única maneira de o cliente ser registrado «mogno»Em Microsft® DNS está modificando sua placa de rede conforme indicadoó na imagem anterior, isto é, declarando explicitamente que: o sufixo DNS para a conexão é mordor.fan, que registra o endereço da conexão no DNS e que usa o sufixo DNS declarado ao registrar a conexão.
buzz @ sysadmin: ~ $ host -t A mahogany.mordor.fan 10.10.10.3
Usando o servidor de domínio: Nome: 10.10.10.3 Endereço: 10.10.10.3 # 53 Aliases: caoba.mordor.fan tem o endereço 10.10.10.115

buzz @ sysadmin: ~ $ host -t A mahogany.mordor.fan
mahogany.mordor.fan tem o endereço 10.10.10.115
Vamos mudar o nome de "mogno" para "cedro"
buzz @ sysadmin: ~ $ host -t A mahogany.mordor.fan 10.10.10.3
Usando o servidor de domínio: Nome: 10.10.10.3 Endereço: 10.10.10.3 # 53 Aliases: Host caoba.mordor.fan não encontrado: 3 (NXDOMAIN)

buzz @ sysadmin: ~ $ host -t Para cedar.mordor.fan 10.10.10.3
Usando o servidor de domínio: Nome: 10.10.10.3 Endereço: 10.10.10.3 # 53 Aliases: cedro.mordor.fan tem o endereço 10.10.10.115

buzz @ sysadmin: ~ $ host -t A mahogany.mordor.fan 10.10.10.5
Usando o servidor de domínio: Nome: 10.10.10.5 Endereço: 10.10.10.5 # 53 Aliases: Host caoba.mordor.fan não encontrado: 3 (NXDOMAIN)

buzz @ sysadmin: ~ $ host -t Para cedar.mordor.fan 10.10.10.5
Usando o servidor de domínio: Nome: 10.10.10.5 Endereço: 10.10.10.5 # 53 Aliases: cedro.mordor.fan tem o endereço 10.10.10.115

E tudo normal, como os clientes Microsoft® e o DNS da Microsoft® gostam que as coisas sejam.

Vamos trabalhar com Microsoft® DHCP e Microsoft® DNS

Caros Leitores, este capítulo está fora do contexto de um blog dedicado ao Software Livre. Consulte a ajuda da Microsoft®. Você não acredita? 

Conclusão

Existem várias maneiras de trabalhar o DNS da Microsoft® quando o fazemos coexistir em uma Rede SME com o Dnsmasq. Entre eles, citaremos apenas o seguinte:

  • Pare completamente o serviço DNS da Microsoft® no computador em que está sendo executado, indicando depois que a inicialização do serviço está desabilitada. Desmarque na configuração da placa de rede de cada cliente Microsoft® a opção de Registrar o endereço de conexão no DNS. Remover do arquivo /etc/dnsmasq.conf Diretriz server = / mordor.fan / 10.10.10.3. Notas:
    • Mesmo se as perguntas sobre os registros não forem respondidas SOA y NS, a rede funcionará corretamente, assim como a união dos diferentes clientes -Microsoft® e Linux- ao Domínio Active Directory®.
    • Tem a vantagem de que na SME LAN haverá apenas um Servidor de Nomes de Domínio - masculino masculino - e será o Dnsmasq. ;-). Por outro lado, é eliminada a possibilidade de inconsistências entre os registros DNS armazenados no DNS da Microsoft® e aqueles disponibilizados pelo Dnsmasq.
  • Deixe o Microsoft® DNS em execução para responder apenas às consultas DNS sobre registros SOA e NS. Notas:
    • Modifique a configuração da placa de rede de cada cliente Windows, desmarcando a opção de Registrar o endereço de conexão no DNS.
    • Nós pensamos que esta solução é um desperdício de recursos.
  • Configure os serviços como vimos ao longo do artigo, o que mostra uma solução mais ao gosto da filosofia Microsoft® -não FreeBSD / Linux- Ok ?.

Resumo

  • A proposta do DNS da Microsoft® é muito fechada. Não deixa espaço para outras soluções que não estejam de acordo com sua filosofia hermética.
  • A Mãe Natureza nos ensina que existimos em um universo diverso. O normal é ter uma LAN mista, caminhando para o Software Livre, rica em vida e variedade.
  • Parece que, para a Microsoft®, os clientes que não aderem à filosofia dele são excluídos e, portanto, não devem se preocupar em levá-los em consideração.
  • Como é difícil trabalhar com Software Privado! Prefiro gastar um pouco de trabalho configurando Software Livre e ser realmente Livre, droga!

"O melhor critério da verdade é a prática."