emerson2703
(usa CentOS)
Enviado em 06/03/2009 - 16:05h
Seguir este tutorial mas a internet não funciona
DNS
Vou deixar bem claro que sempre uso o Slackware como servidor, acredito que em outras versões não mude muita coisa, portanto meu artigo vai ser todo baseado no Slackware.
O programa que vamos usar para o usar como server é o BIND, por padrão ele já vem instalado no Slack, mas vou começar desde o início.
Outra coisa muito importante é que você deve SEMPRE usar a última versão do BIND, por questões de segurança.
Procure em
www.linuxpackages.net o pacote mais recente do Bind. Na presente data a mais recente é a 9.3.0 e a URL é essa:
http://opensys.linuxpackages.net/.../bind-9.3.0-i486-1jim.tgz
Após baixar o pacote você deve entrar no diretório que o arquivo está e dar o seguinte comando:
# installpkg bind-9.3.0-i486-1jim.tgz
Após ter instalado é hora de configurar um domínio (meudominio.com.br) no seu server para a brincadeira começar a funcionar, para isso temos que criar alguns arquivos.
O primeiro deles é o /etc/named.conf, caso esse arquivo já exista, faça um backup dele e crie um novo com o conteúdo abaixo.
options {
directory "/var/named";
/*
* If there is a firewall between you and nameservers you want
* to talk to, you might need to uncomment the query-source
* directive below. Previous versions of BIND always asked
* questions using port 53, but BIND 8.1 uses an unprivileged
* port by default.
*/
// query-source address * port 53;
transfer-format many-answers;
};
controls {
inet * port 953 allow { 127.0.0.1; }; // Para usar o rndc apenas em localhost
};
//
// a caching only nameserver config
//
zone "." IN {
type hint;
file "caching-example/named.ca";
};
zone "localhost" IN {
type master;
file "caching-example/localhost.zone";
allow-update { none; };
};
zone "meudominio.com.br" IN {
type master;
file "meudominio.com.br.domain";
allow-update { none; };
};
Agora vamos criar o /var/named/caching-example/named.ca. Se os diretórios não existirem, por favor os crie:
; This file holds the information on root name servers needed to
; initialize cache of Internet domain name servers
; (e.g. reference this file in the "cache . <file>"
; configuration file of BIND domain name servers).
;
; This file is made available by InterNIC registration services
; under anonymous FTP as
; file domain/named.root
; on server FTP.RS.INTERNIC.NET
; -OR- under Gopher at RS.INTERNIC.NET
; under menu InterNIC Registration Services (NSI)
; submenu InterNIC Registration Archives
; file named.root
;
; last update: Aug 22, 1997
; related version of root zone: 1997082200
;
;
; formerly NS.INTERNIC.NET
;
. 3600000 IN NS A.ROOT-SERVERS.NET.
A.ROOT-SERVERS.NET. 3600000 A 198.41.0.4
;
; formerly NS1.ISI.EDU
;
. 3600000 NS B.ROOT-SERVERS.NET.
B.ROOT-SERVERS.NET. 3600000 A 128.9.0.107
;
; formerly C.PSI.NET
;
. 3600000 NS C.ROOT-SERVERS.NET.
C.ROOT-SERVERS.NET. 3600000 A 192.33.4.12
;
; formerly TERP.UMD.EDU
;
. 3600000 NS D.ROOT-SERVERS.NET.
D.ROOT-SERVERS.NET. 3600000 A 128.8.10.90
;
; formerly NS.NASA.GOV
;
. 3600000 NS E.ROOT-SERVERS.NET.
E.ROOT-SERVERS.NET. 3600000 A 192.203.230.10
;
; formerly NS.ISC.ORG
;
. 3600000 NS F.ROOT-SERVERS.NET.
F.ROOT-SERVERS.NET. 3600000 A 192.5.5.241
;
; formerly NS.NIC.DDN.MIL
;
. 3600000 NS G.ROOT-SERVERS.NET.
G.ROOT-SERVERS.NET. 3600000 A 192.112.36.4
;
; formerly AOS.ARL.ARMY.MIL
;
. 3600000 NS H.ROOT-SERVERS.NET.
H.ROOT-SERVERS.NET. 3600000 A 128.63.2.53
;
; formerly NIC.NORDU.NET
;
. 3600000 NS I.ROOT-SERVERS.NET.
I.ROOT-SERVERS.NET. 3600000 A 192.36.148.17
;
; temporarily housed at NSI (InterNIC)
;
. 3600000 NS J.ROOT-SERVERS.NET.
J.ROOT-SERVERS.NET. 3600000 A 198.41.0.10
;
; housed in LINX, operated by RIPE NCC
;
. 3600000 NS K.ROOT-SERVERS.NET.
K.ROOT-SERVERS.NET. 3600000 A 193.0.14.129
;
; temporarily housed at ISI (IANA)
;
. 3600000 NS L.ROOT-SERVERS.NET.
L.ROOT-SERVERS.NET. 3600000 A 198.32.64.12
;
; housed in Japan, operated by WIDE
;
. 3600000 NS M.ROOT-SERVERS.NET.
M.ROOT-SERVERS.NET. 3600000 A 202.12.27.33
; End of File
Agora vamos criar o /var/named/caching-example/localhost.zone. Se os diretórios não existirem por favor os crie:
$TTL 86400
$ORIGIN localhost.
@ 1D IN SOA @ root (
42 ; serial (d. adams)
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
1D IN NS @
1D IN A 127.0.0.1
Vamos criar o arquivo referente ao seu domínio /var/named/meudominio.com.br.domain:
$TTL 86400
; Authoritative data for meudominio.com.br
;
@ IN SOA localhost. root.meudominio.com.br. (
2004102897 ; Serial (yymmddxx)
10800 ; Refresh 3 hours
3600 ; Retry 1 hour
36000 ; Expire 10 hours
86400 ) ; Minimum 24 hours
IN NS ns1.meudominio.com.br.
IN NS ns2.meudominio.com.br.
;
;Recebimento de mensagens de mail
;
meudominio.com.br. IN MX 0 mx
meudominio.com.br. IN MX 10 mx
;
; Hosts
;
localhost IN A 127.0.0.1
IN HINFO INTEL/110 LINUX
www IN A 200.162.73.7 ; o ip da sua maquina
ns1 IN A 200.162.73.7 ; o ip da sua maquina
ns2 IN A 200.162.73.7 ; o ip da sua maquina
maquina-1 IN A 192.168.69.12 ; ip qualquer da rede
maquina-2 IN A 192.168.69.13 ; ip qualquer da rede
Caso você não tenha o arquivo /etc/rc.d/rc.bind crie-o com o seguinte conteúdo:
#!/bin/sh
# Start/stop/restart the BIND name server daemon (named).
# Start bind. In the past it was more secure to run BIND
# as a non-root user (for example, with '-u daemon'), but
# the modern version of BIND knows how uses to use the
# kernel's capability mechanism to drop all root privileges
# except the ability to bind() to a privileged port and set
# process resource limits, so -u should not be needed. If
# you wish to use it anyway, chown the /var/run/named
# directory to the non-root user.
#
# You might also consider running BIND in a "chroot jail",
# a discussion of which may be found in
# /usr/doc/Linux-HOWTOs/Chroot-BIND-HOWTO.
bind_start() {
if [ -x /usr/sbin/named ]; then
echo "Starting BIND: /usr/sbin/named"
/usr/sbin/named
fi
}
# Stop bind:
bind_stop() {
killall named
}
# Restart bind:
bind_restart() {
bind_stop
sleep 1
bind_start
}
case "$1" in
'start')
bind_start
;;
'stop')
bind_stop
;;
'restart')
;;
*)
echo "usage $0 start|stop|restart"
esac
Depois de salvo o arquivo com o conteúdo acima e dê permissão ao arquivo:
# chmod +x /etc/rc.d/rc.bind
Para iniciar o BIND basta digitar o seguinte comando:
# /etc/rc.d/rc.bind start
Vamos agora colocar o nossa brincadeira para funcionar na hora que a máquina iniciar. Existem várias formas, todos sabem, mas vou explicar a mais simples usando o nosso bom e velho /etc/rc.d/rc.local.
Coloque a linha abaixo dentro do /etc/rc.d/rc.local:
Após tudo feito vamos colocar o nosso servidor para usar o seu próprio DNS para navegar.
Edite o arquivo /etc/resolv.conf e coloque o seguinte conteudo:
search meudominio.com.br
nameserver 192.168.69.11
OBS: altere o 192.168.69.11 para o seu IP.
Depois de tudo pronto e configurado vamos testar.
Por via das dúvidas, dê um boot na sua máquina só pra ver se está tudo iniciando direitinho, não custa nada né?
Vamos pingar o UOL:
$ ping
www.uol.com.br
Se a resposta for parecida com essa é por que esta funcionando perfeitamente:
PING
www.uol.com.br (200.221.2.45) 56(84) bytes of data.
64 bytes from hugo.uol.com.br (200.221.2.45): icmp_seq=1 ttl=123 time=13.9 ms
64 bytes from hugo.uol.com.br (200.221.2.45): icmp_seq=2 ttl=123 time=18.4 ms
---
www.uol.com.br ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1008ms
rtt min/avg/max/mdev = 13.917/16.165/18.413/2.248 ms
Vamos pingar o
www.meudominio.com.br, por que está apontando para sua máquina:
$ ping
www.meudominio.com.br
Se a resposta for parecida com essa, está funcionando também:
PING
www.meudominio.com.br (200.162.73.7) 56(84) bytes of data.
64 bytes from 200.162.73.7: icmp_seq=1 ttl=64 time=0.046 ms
64 bytes from 200.162.73.7: icmp_seq=2 ttl=64 time=0.041 ms
---
www.markeweb.com.br ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1000ms
rtt min/avg/max/mdev = 0.041/0.043/0.046/0.007 ms
PRONTO!
Se você chegou até aqui sem enfrentar problemas é por que seu server está funcionando perfeitamente. Caso contrário veja novamente todos os passos anteriores ou entre em contato comigo, terei um grande prazer em ajudar os usuários do VOL.