2018/01/04 01:13 1/10 Instalação e Configuração do Bind Master no Debian Wheezy Instalação e Configuração do Bind Master no Debian Wheezy E ai galera, aqui eu vou disponibilizar um script para configuração do Bind 9 trabalhando como Master no Debian Wheezy, aqui vocês precisam mudar o domínio e os endereços ips antes de rodar o script. OBS: A View Externa eu setei os endereços ips como 200.200.200.* caso precise trabalhar com o DNS para a Web mude os ips para os seus ips externos.!/bin/sh =========================================================================== == NOTA DE LICENCA Este trabalho esta licenciado sob uma Licenca Creative Commons Atribuicao- Compartilhamento pela mesma Licenca 3.0 Brasil. Para ver uma copia desta licenca, visite http://creativecommons.org/licenses/by/3.0/br/ ou envie uma carta para Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Criado por : Douglas Quintiliano dos Santos douglas.q.santosgmail.com 19/05/2013 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Funcao: Script para realizar configuração de servidores DNS MASTER No Debian Wheezy =========================================================================== == COMANDOS APTITUDE="/usr/bin/aptitude" CAT="/bin/cat" CHMOD="/bin/chmod" CHOWN="/bin/chown" DATA="/bin/date" CP="/bin/cp" DQS CONSULTORIA E TREINAMENTOS - http://wiki.douglasqsantos.com.br/
Last update: instalacao_e_configuracao_do_bind_master_no_debian_wheezy_pt_br http://wiki.douglasqsantos.com.br/doku.php/instalacao_e_configuracao_do_bind_master_no_debian_wheezy_pt_br 2017/09/05 12:18 LN="/bin/ln" MV="/bin/mv" MKDIR="/bin/mkdir" MKNOD="/bin/mknod" SLEEP="/bin/sleep" CUT="/bin/cut" CP="/bin/cp" IP=$(ifconfig eth0 awk '/inet end/ {print $3}') PACOTES_BIND="bind9 dnsutils" PATH_BIND="/var/lib/named" MUDAR OS VALORES ABAIXO DE ACORDO COM A SUA NECESSIDADE DEFININDO O DOMINIO DOMINIO="douglas.lan" DEFININDO A REDE REDE="192.168.0.0/24" DEFININDO O IP DO NS1 NS1_IP=${IP} DEFININDO O IP DO MX MX_IP=${IP} DEFININDO O IP DO WWW WWW_IP=${IP} DEFININDO O IP DO NS2 QUE VAI RECEBER A VIEW INTERNA NS2_IP=192.168.0.84 DEFININDO O IP DO NS2 QUE VAI RECEBER A VIEW EXTERNA NS2_IP2=192.168.0.85 INSTALACAO DO PACOTE ${APTITUDE} update ${APTITUDE} install ${PACOTES_BIND} -y Parar o serviço para podermos configurá-lo /etc/init.d/bind9 stop ARVORE DE DIRETORIOS ${MKDIR} -p ${PATH_BIND}/etc ${MKDIR} -p ${PATH_BIND}/dev ${MKDIR} -p ${PATH_BIND}/var/log ${MKDIR} -p ${PATH_BIND}/var/cache/bind ${MKDIR} -p ${PATH_BIND}/var/cache/bind/dynamic ${MKDIR} -p ${PATH_BIND}/var/run/bind/run CRIANDO OS DISPOSITIVOS NECESSARIOS ${MKNOD} ${PATH_BIND}/dev/null c 1 3 ${MKNOD} ${PATH_BIND}/dev/random c 1 8 ${MKNOD} ${PATH_BIND}/dev/zero c 1 5 AJUSTANDO AS PERMISSOES ${CHMOD} 666 ${PATH_BIND}/dev/null http://wiki.douglasqsantos.com.br/ Printed on 2018/01/04 01:13
2018/01/04 01:13 3/10 Instalação e Configuração do Bind Master no Debian Wheezy ${CHMOD} 666 ${PATH_BIND}/dev/random ${CHMOD} 666 ${PATH_BIND}/dev/zero ${CHOWN} -R bind:bind ${PATH_BIND}/var/* AJUSTANDO A LOCALIZACAO DOS ARQUIVOS ${MV} /etc/bind ${PATH_BIND}/etc ${LN} -sf ${PATH_BIND}/etc/bind /etc/bind ${CP} /etc/localtime ${PATH_BIND}/etc AJUSTANDO AS PERMISSOES NOVAMENTE ${CHOWN} -R bind:bind ${PATH_BIND}/etc/bind ${CHOWN} -R bind:bind ${PATH_BIND}/var/cache/bind/dynamic ${CHMOD} -R 775 ${PATH_BIND}/var/cache/bind/dynamic AJUSTANDO O ARQUIVO /etc/default/bind9 ${CAT} << > /etc/default/bind9 /etc/default/bind9 RESOLVCONF=yes OPTIONS="-u bind -t ${PATH_BIND}" AJUSTANDO O ARQUIVO /etc/resolv.conf ${CAT} << > /etc/resolv.conf domain ${DOMINIO} nameserver ${NS1_IP} ESTRAINDO O REVERSO DO NS1 REV3=$(echo ${NS1_IP} cut -d '.' -f 3) REV2=$(echo ${NS1_IP} cut -d '.' -f 2) REV1=$(echo ${NS1_IP} cut -d '.' -f 1) IP_REVERSE=${REV3}.${REV2}.${REV1} AJUSTANDO O ARQUIVO /srv/bind/etc/bind/named.conf.options ${CP} ${PATH_BIND}/etc/bind/named.conf.options ${PATH_BIND}/etc/bind/named.conf.options.bkp ${CAT} << > ${PATH_BIND}/etc/bind/named.conf.options options { directory "/var/cache/bind"; managed-keys-directory "/var/cache/bind/dynamic"; auth-nxdomain no; listen-on-v6 { any; listen-on { 127.0.0.1/32; ${REDE allow-query { any; recursion no; version "Nao Disponivel"; DNSSEC DQS CONSULTORIA E TREINAMENTOS - http://wiki.douglasqsantos.com.br/
Last update: instalacao_e_configuracao_do_bind_master_no_debian_wheezy_pt_br http://wiki.douglasqsantos.com.br/doku.php/instalacao_e_configuracao_do_bind_master_no_debian_wheezy_pt_br 2017/09/05 12:18 dnssec-enable no; dnssec-validation no; dnssec-lookaside auto; Controles include "/etc/bind/rndc.key"; controls { inet 127.0.0.1 port 953 allow { 127.0.0.1; } keys { rndc-key; LOGS logging { channel xfer-log { file "/var/log/named.log"; print-category yes; print-severity yes; print-time yes; severity info; category xfer-in { xfer-log; category xfer-out { xfer-log; category notify { xfer-log; channel update-debug { file "/var/log/named-update-debug.log"; severity debug 3; print-category yes; print-severity yes; print-time yes; channel security-info { file "/var/log/named-auth-info.log"; severity info; print-category yes; print-severity yes; print-time yes; category update { update-debug; category security { security-info; Controle de ancoras de DNSSEC include "/etc/bind/bind.keys"; AJUSTANDO O ARQUIVO ${PATH_BIND}/etc/bind/named.conf.local http://wiki.douglasqsantos.com.br/ Printed on 2018/01/04 01:13
2018/01/04 01:13 5/10 Instalação e Configuração do Bind Master no Debian Wheezy ${CP} ${PATH_BIND}/etc/bind/named.conf ${PATH_BIND}/etc/bind/named.conf.bkp ${CAT} << > ${PATH_BIND}/etc/bind/named.conf include "/etc/bind/named.conf.options"; include "/etc/bind/named.conf.local"; include "/etc/bind/named.conf.internal-zones"; include "/etc/bind/named.conf.external-zones"; AJUSTANDO O ARQUIVO DE ZONAS INTERNAS ${CAT} << > ${PATH_BIND}/etc/bind/named.conf.internal-zones Definindo quem vão ser os nossos hosts internos, ex: a nossa rede e a maquina local acl "internal_hosts" { ${REDE 127.0.0.1/32; Definindo qual vai ser o ip do servidor slave que vai poder receber a replicação da view internal acl "internal_slave" { ${NS2_IP Definição da View interna view "internal" { Definindo quais clientes vão poder consultar essa view match-clients {!${NS2_IP2 internal_hosts; O nossos clientes da view interna vão poder efetuar consultas recursivas recursion yes; Para qual servidor vai ser liberado a transferencia dessa view. allow-transfer { internal_slave; Quem o bind vai notificar em caso de alterações de zona. also-notify { ${NS2_IP Zonas hint aonde temos as definições dos root masters zone "." { type hint; file "/etc/bind/db.root"; DQS CONSULTORIA E TREINAMENTOS - http://wiki.douglasqsantos.com.br/
Last update: instalacao_e_configuracao_do_bind_master_no_debian_wheezy_pt_br http://wiki.douglasqsantos.com.br/doku.php/instalacao_e_configuracao_do_bind_master_no_debian_wheezy_pt_br 2017/09/05 12:18 Zonas internas zone "localhost" { file "/etc/bind/db.local"; zone "127.in-addr.arpa" { file "/etc/bind/db.127"; zone "0.in-addr.arpa" { file "/etc/bind/db.0"; zone "255.in-addr.arpa" { file "/etc/bind/db.255"; CONFIGURAÇÕES DO DOMINIO INTERNO zone "${DOMINIO}" { file "db.${dominio}.internal"; zone "${IP_REVERSE}.in-addr.arpa" { file "db.${ip_reverse}"; AJUSTANDO O ARQUIVO DE ZONAS EXTERNAS ${CAT} << > ${PATH_BIND}/etc/bind/named.conf.external-zones Definindo os clientes locais o nome dessa acl tem que ser diferente da acl da view interna acl "rede_local" { ${REDE 127.0.0.1/32; Defindo o ip do servidor slave para a view externa acl "external_slave" { ${NS2_IP2 http://wiki.douglasqsantos.com.br/ Printed on 2018/01/04 01:13
2018/01/04 01:13 7/10 Instalação e Configuração do Bind Master no Debian Wheezy Definição da View externa view "external" { Definição dos clientes que vão poder consultar essa view match-clients { external_slave;!rede_local; any; Os clientes dessa view não vão poder efetuar consultas recursivas recursion no; Para qual servidor vai ser liberada a transferencia dessa view allow-transfer { external_slave; Quem o bind vai notificar quando for efetuada alguma alteração nas zonas also-notify { ${NS2_IP2 A minha zona de teste. zone "${DOMINIO}" { file "db.${dominio}.external"; AJUSTANDO O ARQUIVO DE ZONA INTERNA ${CAT} << > ${PATH_BIND}/var/cache/bind/db.${DOMINIO}.internal `echo '$TTL 86400'` IN SOA dns.${dominio}. root.dns.${dominio}. ( `date +%Y%m%d`01 ; Serial 3600 ; Refresh 1800 ; Retry 1209600 ; Expire 3600 ) ; Minimum ; IN NS ${DOMINIO}. ${DOMINIO}. IN TXT "v=spf1 a mx ip4:${rede} -all" mail.${dominio} IN TXT "v=spf1 a -all" IN NS ns1.${dominio}. IN NS ns2.${dominio}. IN MX 0 mail.${dominio}. DQS CONSULTORIA E TREINAMENTOS - http://wiki.douglasqsantos.com.br/
Last update: instalacao_e_configuracao_do_bind_master_no_debian_wheezy_pt_br http://wiki.douglasqsantos.com.br/doku.php/instalacao_e_configuracao_do_bind_master_no_debian_wheezy_pt_br 2017/09/05 12:18 ;NAME SERVERS IN A ${NS1_IP} ns1 IN A ${NS1_IP} ns2 IN A ${NS2_IP} dns IN A ${NS1_IP} ;MAIL SERVERS mail IN A ${MX_IP} imap IN CNAME mail pop IN CNAME mail smtp IN CNAME mail webmail IN CNAME mail ;WEB SERVERS www IN A ${WWW_IP} ftp IN CNAME www mailadmin IN CNAME www Retirando os endereços finais para o arquivo reverso---------------------- -- REV_NS1=$(echo ${NS1_IP} cut -d '.' -f 4) REV_NS2=$(echo ${NS2_IP} cut -d '.' -f 4) REV_MX=$(echo ${MX_IP} cut -d '.' -f 4) REV_WWW=$(echo ${WWW_IP} cut -d '.' -f 4) AJUSTANDO O ARQUIVO /var/lib/named/var/cache/bind/db.0.168.192 ${CAT} << > ${PATH_BIND}/var/cache/bind/db.${IP_REVERSE} `echo '$TTL 86400'` IN SOA dns.${dominio}. root.dns.${dominio}. ( `date +%Y%m%d`01 ; Serial 3600 ; Refresh 1800 ; Retry 604800 ; Expire 3600 ) ; Minimum ; IN NS ${DOMINIO}. IN NS ns1.${dominio}. IN NS ns2.${dominio}. IN MX 0 mail.${dominio}. ;NAME SERVERS ${REV_NS1} IN PTR ${DOMINIO}. ${REV_NS1} IN PTR ns1.${dominio}. ${REV_NS2} IN PTR ns2.${dominio}. ${REV_NS1} IN PTR dns.${dominio}. http://wiki.douglasqsantos.com.br/ Printed on 2018/01/04 01:13
2018/01/04 01:13 9/10 Instalação e Configuração do Bind Master no Debian Wheezy ;MAIL SERVERS ${REV_MX} IN PTR mail.${dominio}. ;WEB SERVERS ${REV_WWW} IN PTR adm.${dominio}. ${REV_WWW} IN PTR www.${dominio}. AJUSTANDO O ARQUIVO DE ZONA INTERNA ${CAT} << > ${PATH_BIND}/var/cache/bind/db.${DOMINIO}.external `echo '$TTL 86400'` IN SOA dns.${dominio}. root.dns.${dominio}. ( `date +%Y%m%d`01 ; Serial 3600 ; Refresh 1800 ; Retry 1209600 ; Expire 3600 ) ; Minimum ; IN NS ${DOMINIO}. ${DOMINIO}. IN TXT "v=spf1 a mx ip4:${rede} -all" mail.${dominio} IN TXT "v=spf1 a -all" IN NS ns1.${dominio}. IN NS ns2.${dominio}. IN MX 0 mail.${dominio}. ;NAME SERVERS IN A 200.200.200.1 ns1 IN A 200.200.200.1 ns2 IN A 200.200.200.2 dns IN A 200.200.200.1 ;MAIL SERVERS mail IN A 200.200.200.3 imap IN CNAME mail pop IN CNAME mail smtp IN CNAME mail webmail IN CNAME mail ;WEB SERVERS www IN A 200.200.200.4 ftp IN CNAME www mailadmin IN CNAME www REINCIANDO O BIND9 /etc/init.d/bind9 start DQS CONSULTORIA E TREINAMENTOS - http://wiki.douglasqsantos.com.br/
Last update: instalacao_e_configuracao_do_bind_master_no_debian_wheezy_pt_br http://wiki.douglasqsantos.com.br/doku.php/instalacao_e_configuracao_do_bind_master_no_debian_wheezy_pt_br 2017/09/05 12:18 From: http://wiki.douglasqsantos.com.br/ - DQS CONSULTORIA E TREINAMENTOS Permanent link: http://wiki.douglasqsantos.com.br/doku.php/instalacao_e_configuracao_do_bind_master_no_debian_wheezy_pt_br Last update: 2017/09/05 12:18 http://wiki.douglasqsantos.com.br/ Printed on 2018/01/04 01:13