dhcp

15
Editando arquivo de configuração do servidor DHCP 1. Para inserirmos as configurações desejadas para serem atribuídas aos hosts de nossa rede, precisamos inserir as configurações em um arquivo de configuração, que será "lido" pelo daemon do DHCP e realizará as tarefas necessárias. O arquivo de configuração do ISC DHCP é o /etc/dhcp3/dhcpd.conf. O mesmo deve conter o seguinte conteúdo: 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; }

Upload: gabriel-coelho

Post on 26-Jul-2015

27 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: dhcp

Editando arquivo de configuração do servidor DHCP

1. Para inserirmos as configurações desejadas para serem atribuídas aos hosts de nossa rede, precisamos inserir as configurações em um arquivo de configuração, que será "lido" pelo daemon do DHCP e realizará as tarefas necessárias.

O arquivo de configuração do ISC DHCP é o /etc/dhcp3/dhcpd.conf. O mesmo deve conter o seguinte conteúdo:

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;

}

Page 2: dhcp

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

Explicando algumas das opções mais relevantes:

As opções do arquivo de configuração que ficam fora das chaves "{ }" são opções que chamados de globais, ou seja, opções que afetam toda a área de autoridade do servidor DHCP em questão. Já as opções que ficam dentro das chaves são opções específicas, que serão atribuídas a uma rede ou a um determinado host (como no caso da atribuição de um endereço IP sempre a um mesmo host).

default-lease-time 600: Especifica o tempo mínimo em segundos de checagem de endereço IP. Ao fim de cada intervalo, o daemon dhcpd verificará se o(s) IP(s) alocado(s) aos hosts ainda estão sendo utilizados. Isso para que não ocorra desperdício de endereços IP na rede;

max-lease-time 7200: Período máximo, também representado em segundos, de uma alocação de endereço IP a um cliente. Após esse período, o daemon dhcpd liberará o endereço IP, que deverá ser requisitado novamente pelo cliente ou por outra máquina autorizada;

authoritative: Indica que o servidor DHCP será autoritário 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 configuração do Syslog (serviço de log presente em muitas distribuições Linux) inserir uma entrada que direcione todos os logs do dhcpd para um arquivo separado, para facilitar nossa consulta por logs relacionados ao serviço de DHCP. No Debian, o arquivo de configuração 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 serviço de DHCP) em qualquer priority (indica o nível de importância do log. No nosso caso, qualquer ocorrência representada pelo símbolo 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 endereços que o servidor DHCP irá utilizar para distribuir aos hosts da rede;

Page 3: dhcp

option domain-name-servers 208.67.222.222,208.67.220.220,8.8.8.8: Servidores de Nomes (DNS) que serão atribuídos aos hosts da rede. Podem ser inseridos inúmeros servidores DNS. Os mesmos devem ser separados por vírgulas e sem espaço depois da vírgula;

option domain-name "tuxnetwork.local.net": Nome do domínio local que será atribuído aos hosts da rede. Essa opção é opcional e só deve ser usada caso desejado;

option routers 192.168.1.4: Endereço IP do gateway da rede. Geralmente esse dispositivo é um router e por isso a opção tem esse nome. Caso a comunicação dos hosts na rede seja somente local, essa opção também não é necessária.

No caso da entrada abaixo, é uma configuração especifica onde estará afetando somente um único host (devido a utilização das chaves). O host de nome "tux" estará recebendo um mesmo endereço IP sempre em que se conectar nessa rede. Isso é devido a uma entrada no arquivo de configuração do DHCP dizendo que um determinado endereço IP será sempre atribuído 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 solicitações de informações de rede. Podemos especificar qual será a interface de rede responsável por esse trabalho no arquivo de configuração /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 solicitações dos clientes DHCP):

INTERFACES="eth0"

Page 4: dhcp

Observação importante: Para toda e qualquer configuração realizada no arquivo de configuração do servidor DHCP, o serviço do mesmo deverá ser reinicializado para que as novas alterações entrem em vigor.

2. Com o servidor DHCP já configurado, podemos realizar um teste a partir de uma estação cliente Linux configurado para receber informações 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 utilização 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

Page 5: dhcp

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; };

};

Page 6: dhcp

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;

Page 7: dhcp

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

Page 8: dhcp

[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; };

Page 9: dhcp

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

Page 10: dhcp

# Esta e uma definição 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 endereço 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 faça 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;

};

Page 11: dhcp

Adicione o arquivo de definição 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 nós adicionamos todos os endereços/máquinas 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

Page 12: dhcp

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 configurações

sudo vim /etc/resolv.conf

Page 13: dhcp

search acme.local

nameserver 192.168.0.1

Teste o servidor usando os seguintes comandos:

dig acme.local

ping mail.acme.local