Você está na página 1de 13

Editando arquivo de configurao do servidor DHCP

1. Para inserirmos as configuraes desejadas para serem atribudas aos hosts de nossa rede, precisamos inserir as configuraes em um arquivo de configurao, que ser "lido" pelo daemon do DHCP e realizar as tarefas necessrias.

O arquivo de configurao do ISC DHCP o /etc/dhcp3/dhcpd.conf. O mesmo deve conter o seguinte contedo:

ddns-update-style none; default-lease-time 600; max-lease-time 7200; authoritative; log-facility local7;

subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.20 192.168.1.30; option domain-name-servers 208.67.222.222,208.67.220.220,8.8.8.8; option domain-name "tuxnetwork.local.net"; option routers 192.168.1.4; option broadcast-address 192.168.1.255; }

host tux { hardware ethernet 08:00:07:26:c0:a5; fixed-address tux.tuxnetwork.local.net; }

Obs.: Edite o mesmo mediante o seu ambiente de rede desejado.

Explicando algumas das opes mais relevantes:

As opes do arquivo de configurao que ficam fora das chaves "{ }" so opes que chamados de globais, ou seja, opes que afetam toda a rea de autoridade do servidor DHCP em questo. J as opes que ficam dentro das chaves so opes especficas, que sero atribudas a uma rede ou a um determinado host (como no caso da atribuio de um endereo IP sempre a um mesmo host). default-lease-time 600: Especifica o tempo mnimo em segundos de checagem de endereo IP. Ao fim de cada intervalo, o daemon dhcpd verificar se o(s) IP(s) alocado(s) aos hosts ainda esto sendo utilizados. Isso para que no ocorra desperdcio de endereos IP na rede; max-lease-time 7200: Perodo mximo, tambm representado em segundos, de uma alocao de endereo IP a um cliente. Aps esse perodo, o daemon dhcpd liberar o endereo IP, que dever ser requisitado novamente pelo cliente ou por outra mquina autorizada;

authoritative: Indica que o servidor DHCP ser autoritrio em todo o seguimento da rede; log-facility local7: Indica que o log ser a facility local7. Podemos entender como facility a origem dos logs, ou seja, de onde ele est vindo. Podemos no arquivo de configurao do Syslog (servio de log presente em muitas distribuies Linux) inserir uma entrada que direcione todos os logs do dhcpd para um arquivo separado, para facilitar nossa consulta por logs relacionados ao servio de DHCP. No Debian, o arquivo de configurao do syslog fica em /etc/rsyslog.conf. A seguinte entrada pode ser adiciona ao mesmo:

local7.* /var/log/dhcpd.log

Com isso todos os logs com origem da facility local7 (facility essa que representa o servio de DHCP) em qualquer priority (indica o nvel de importncia do log. No nosso caso, qualquer ocorrncia representada pelo smbolo asterisco ser logada) ser direcionado ao arquivo /var/log/dhcpd.log.

range 192.168.1.20 192.168.1.30: Indica o range ou o intervalo de endereos que o servidor DHCP ir utilizar para distribuir aos hosts da rede;

option domain-name-servers 208.67.222.222,208.67.220.220,8.8.8.8: Servidores de Nomes (DNS) que sero atribudos aos hosts da rede. Podem ser inseridos inmeros servidores DNS. Os mesmos devem ser separados por vrgulas e sem espao depois da vrgula; option domain-name "tuxnetwork.local.net": Nome do domnio local que ser atribudo aos hosts da rede. Essa opo opcional e s deve ser usada caso desejado; option routers 192.168.1.4: Endereo IP do gateway da rede. Geralmente esse dispositivo um router e por isso a opo tem esse nome. Caso a comunicao dos hosts na rede seja somente local, essa opo tambm no necessria.

No caso da entrada abaixo, uma configurao especifica onde estar afetando somente um nico host (devido a utilizao das chaves). O host de nome "tux" estar recebendo um mesmo endereo IP sempre em que se conectar nessa rede. Isso devido a uma entrada no arquivo de configurao do DHCP dizendo que um determinado endereo IP ser sempre atribudo a um mesmo MAC Address - no caso o MAC Address do host tux:

host tux { hardware ethernet 08:00:07:26:c0:a5; fixed-address tux.tuxnetwork.local.net; }

1. interessante indicarmos em qual interface de rede o daemon do DHCP receber as solicitaes de informaes de rede. Podemos especificar qual ser a interface de rede responsvel por esse trabalho no arquivo de configurao /etc/default/dhcp3-server. Devemos procurar pela linha:

INTERFACES=""

e alterar a mesma para (estamos no caso inserindo qual ser a placa de rede que recebera as solicitaes dos clientes DHCP):

INTERFACES="eth0"

Observao importante: Para toda e qualquer configurao realizada no arquivo de configurao do servidor DHCP, o servio do mesmo dever ser reinicializado para que as novas alteraes entrem em vigor.

2. Com o servidor DHCP j configurado, podemos realizar um teste a partir de uma estao cliente Linux configurado para receber informaes de rede automaticamente (via DHCP). Existe um cliente DHCP para Linux chamado "dhclient", que tem o objetivo (quando utilizado) de enviar um broadcast na rede a procura de um servidor DHCP. Segue a sintaxe de utilizao do mesmo:

# dhclient eth1

Obs.: No local de "eth1" voc deve inserir a interface de rede que est em uso no seu sistema operacional.

Bind 9 Configure DNS server which resolves domain name or IP address.

[1]

Install BIND

root@dlp:~# aptitude -y install bind9 bind9utils [2] Configure BIND This example is done with grobal IP address [172.16.0.80/29], Private IP address [10.0.0.0/24], Domain name [server.world]. However, Please use your own IPs and domain name when you set config on your server. ( Actually, [172.16.0.80/29] is for private IP address, though. ) root@dlp:~# vi /etc/bind/named.conf

include "/etc/bind/named.conf.options"; include "/etc/bind/named.conf.local"; # make it comment # include "/etc/bind/named.conf.default-zones"; # add

include "/etc/bind/named.conf.internal-zones"; include "/etc/bind/named.conf.external-zones";

root@dlp:~# vi /etc/bind/named.conf.internal-zones # create new

# define for internal section view "internal" { match-clients { localhost; 10.0.0.0/24; }; zone "." { type hint; file "db.root"; }; # set zone for internal zone "server.world" { type master; file "server.world.lan"; allow-update { none; }; }; # set zone for internal *note zone "0.0.10.in-addr.arpa" { type master; file "0.0.10.db"; allow-update { none; }; };

zone "localhost" { type master; file "db.local"; }; zone "127.in-addr.arpa" { type master; file "db.127"; }; zone "0.in-addr.arpa" { type master; file "db.0"; }; zone "255.in-addr.arpa" { type master; file "db.255"; }; };

root@dlp:~# vi /etc/bind/named.conf.external-zones # create new

# define for external section view "external" { match-clients { any; }; zone "." { type hint;

file "db.root"; }; # set zone for external zone "server.world" { type master; file "server.world.wan"; allow-update { none; }; }; # set zone for external *note zone "80.0.16.172.in-addr.arpa" { type master; file "80.0.16.172.db"; allow-update { none; }; }; };

# *note : For How to write for reverse resolving, Write network address reversely like below.

For 10.0.0.0/24 network address 10.0.0.0 range of network 10.0.0.0 - 10.0.0.255 how to write 0.0.10.in-addr.arpa

For 172.16.0.80/29 network address 172.16.0.80 range of network 172.16.0.80 - 172.16.0.87 how to write 80.0.16.172.in-addr.arpa

[3]

Limit ranges you allow to access if needed.

root@dlp:~# vi /etc/bind/named.conf.options

options { # change directory "/etc/bind";

// If there is a firewall between you and nameservers you want // to talk to, you may need to fix the firewall to allow multiple // ports to talk. See http://www.kb.cert.org/vuls/id/800113

// If your ISP provided one or more IP addresses for stable // nameservers, you probably want to use them as forwarders. // Uncomment the following block, and insert the addresses replacing // the all-0's placeholder.

// forwarders { // // }; 0.0.0.0;

# # range you allow to be asked ( set if you use your DNS only in LAN ) allow-query { localhost; 10.0.0.0/24; }; # range you allow to be transfered ( if you use secondary DNS ) allow-transfer { localhost; 10.0.0.0/24; }; # range you allow to be recursioned ( set if you use your DNS only in LAN ) allow-recursion { localhost; 10.0.0.0/24; };

auth-nxdomain no; # conform to RFC1035 # make it comment if not use IPV6 # listen-on-v6 { any; }; };

Bind 9 2

Precisei instalar um DNS Server recentemente e vi que este tutorial estava um pouco desatualizado.

Aproveitei a oportunidade para atualiz-lo.

Instalando o Bind

sudo apt-get install bind9 dnsutils

Configurando o Bind

Fazendo backup do named.conf.local

sudo cp /etc/bind/named.conf.local /etc/bind/named.conf.local.ORIG

Aqui onde configuramos as zonas do DNS.

sudo vim /etc/bind/named.conf.local

Adicione as seguintes linhas no arquivo named.conf.local

# Esta e uma definio de zona. substitua acme.local com o nome do seu dominio

zone acme.local { type master; file /etc/bind/zones/acme.local.db; };

# Esta e uma zona reversa. substitua o 0.168.192 com o seu endereco de rede em notacao reversa e.g meu endereo e 192.168.0

zone 0.168.192.in-addr.arpa { type master; file /etc/bind/zones/rev.0.168.192.in-addr.arpa; };

Agora faa o backup e edite o arquivo named.conf.options

sudo cp /etc/bind/named.conf.options /etc/bind/named.conf.options.ORIG

Edite o arquivo named.conf.options e informe um servidor de encaminhamento ( forwarder )

sudo vim /etc/bind/named.conf.options

forwarders { # Susbstitua o endereco abaixo com o endereco do seu provedor de DNS

208.67.222.222; };

Adicione o arquivo de definio de zona (substitua acme.local com o nome do seu dominio)

sudo mkdir /etc/bind/zones

sudo vim /etc/bind/zones/acme.local.db

O arquivo de definicao de zona onde ns adicionamos todos os endereos/mquinas que nosso DNS conhecer.

// Substitua acme.local com o nome do seu dominio. nao esqueca do . depois do nome do dominio! // tambem, substitua o ns1 com o nome do seu servidor DNS

$TTL 604800 @ IN SOA acme.local. admin.acme.local. ( 2009051301 ; Serial 7200 ; Refresh 120 ; Retry 2419200 ; Expire 604800) ; Default TTL ; @ IN NS ns1.acme.local.

acme.local. IN MX 10 mail.acme.local acme.local. IN A 192.168.0.1 www IN CNAME acme.local. mail IN A 192.168.0.1

Criando o arquivo de zona reversa

sudo vim /etc/bind/zones/rev.0.168.192.in-addr.arpa

$TTL 1d; $ORIGIN 0.168.192.IN-ADDR.ARPA. @ IN SOA ns1.acme.local. admin.acme.local. ( 2009051301 7200 120 2419200 604800 )

IN NS ns1.acme.local. 1 IN PTR ns1.acme.local.

Reinicie o servidor Bind usando o seguinte comando

sudo /etc/init.d/bind9 restart

Testando o servidor DNS

Modifique o arquivo /etc/resolv.conf com as seguintes configuraes

sudo vim /etc/resolv.conf

search acme.local nameserver 192.168.0.1

Teste o servidor usando os seguintes comandos:

dig acme.local

ping mail.acme.local