Servidor DHCP - in Secure · clientes: o dhcpcd, ou o pump. O servidor disponível é o dhcpd da...

10
Servidor DHCP Conceitos DHCP é abreviação de Dynamic Host Configuration Protocol Protocolo de Configuração de Host (computadores) Dinâmico.Em uma rede baseada no protocolo TCP/IP, todo computador deve possuir um endereço IP distinto (exceto qundo temos um roteador). Isso significa que antes de colocar uma nova estação na rede teríamos que escolher um endereço IP que não esteja sendo utilizado por outra máquina. Em pequenas redes isso é fácil de ser feito, mas em grandes redes isso se torna uma tarefa muito trabalhosa e bastante sujeita a falhas. Para evitar esse problema, foi criado o DHCP, que tem como função principal fornecer um endereço IP dinamicamente a um computador no momento de sua conexão à rede. O servidor de DHCP verifica qual o endereço IP disponível em uma tabela cadastrada previamente dentro deste e informa ao solicitante esse endereço, tornando-o disponível para outras solicitações. Dessa maneira, a administração dos endereços IP é feita automaticamente e não existem problemas de conflito. Quando a máquina solicitante sai da rede, o servidor DHCP torna o endereço IP dessa máquina disponível novamente. O protocolo DHCP (Dynamic Host Configuration Protocol) permite que clientes dentro de uma mesma rede física possam efetuar suas configurações de rede de forma automática. Dessa maneira, com o uso do serviço DHCP, estações podem buscar em um servidor várias informações como, por exemplo: - endereços e máscaras de rede (IP); - endereço de roteadores (gateways); - endereços de servidores de nomes; - endereços de servidores de fontes; - endereços de servidores WINS (Windows Name Server); - endereços de servidores proxy. Outras informações podem ser fornecidas via DHCP, mas essas o mais comum é utilizar um servidor DHCP para compartilhar as três primeiras. Para Linux, existem dois

Transcript of Servidor DHCP - in Secure · clientes: o dhcpcd, ou o pump. O servidor disponível é o dhcpd da...

Page 1: Servidor DHCP - in Secure · clientes: o dhcpcd, ou o pump. O servidor disponível é o dhcpd da ISC. Antes de instalar um servidor DHCP, o administrador deve pesar os prós e contras

Servidor DHCP

Conceitos

DHCP é abreviação de Dynamic Host Configuration Protocol – Protocolo de Configuração de

Host (computadores) Dinâmico.Em uma rede baseada no protocolo TCP/IP, todo computador

deve possuir um endereço IP distinto (exceto qundo temos um roteador).

Isso significa que antes de colocar uma nova estação na rede teríamos que escolher um

endereço IP que não esteja sendo utilizado por outra máquina. Em pequenas redes

isso é fácil de ser feito, mas em grandes redes isso se torna uma tarefa muito trabalhosa

e bastante sujeita a falhas. Para evitar esse problema, foi criado o DHCP, que tem como

função principal fornecer um endereço IP dinamicamente a um computador no momento

de sua conexão à rede.

O servidor de DHCP verifica qual o endereço IP disponível em uma tabela

cadastrada previamente dentro deste e informa ao solicitante esse endereço, tornando-o

disponível para outras solicitações.

Dessa maneira, a administração dos endereços IP é feita automaticamente e não

existem problemas de conflito. Quando a máquina solicitante sai da rede, o servidor

DHCP torna o endereço IP dessa máquina disponível novamente.

O protocolo DHCP (Dynamic Host Configuration Protocol) permite que clientes

dentro de uma mesma rede física possam efetuar suas configurações de rede de forma

automática.

Dessa maneira, com o uso do serviço DHCP, estações podem buscar em um

servidor várias

informações como, por exemplo:

- endereços e máscaras de rede (IP);

- endereço de roteadores (gateways);

- endereços de servidores de nomes;

- endereços de servidores de fontes;

- endereços de servidores WINS (Windows Name Server);

- endereços de servidores proxy.

Outras informações podem ser fornecidas via DHCP, mas essas o mais comum é

utilizar um servidor DHCP para compartilhar as três primeiras. Para Linux, existem dois

Page 2: Servidor DHCP - in Secure · clientes: o dhcpcd, ou o pump. O servidor disponível é o dhcpd da ISC. Antes de instalar um servidor DHCP, o administrador deve pesar os prós e contras

clientes: o dhcpcd, ou o pump. O servidor disponível é o dhcpd da ISC.

Antes de instalar um servidor DHCP, o administrador deve pesar os prós e contras

dessa tecnologia.

Com o uso normal do DHCP, qualquer usuário pode plugar uma máquina na rede e

fazer uso dela. Assim, na forma de uso mais comum do DHCP, o administrador pode mais

facilmente perder o controle sobre os endereços da rede. Por outro lado, ele não se vê

obrigado a configurar máquinas de usuários iniciantes.

DHCP também é extremamente útil quando há mais máquinas que IP em uma dada

rede, mas nem todas as máquinas estão ligadas ao mesmo tempo. Dessa maneira,

DHCP é utilizada com freqüência em provedores.

8.2 Instalando o dhcp

Para instalar o dhcp, pode-se utilizar o repositório da distribuição.

- Família Debian (Debian, Ubuntu e etc.):

# apt-get install dhcp3-server

- Família Red-Hat (Red-Hat, Fedora, CentOS):

# yum install dhcpd-server

- ou fazendo download do pacote em:

http://sourceforge.net/projects/dhcpserver/files/Open%20DHCP

%20Server/1.40%20Stable/opendhcpV1.40.tar.gz/download

E fazendo a compilação do pacote via os comandos:

# ./configure

# make

# make install

Instalação Debian MV

root@server:~# aptitude install isc-dhcp-server

Configuração

O serviço DHCP só deverá estar disponível para a rede interna. Por isso só deverá aceitar

ligações pela interface interna (eth0, neste caso), o que é definido no ficheiro de

configuração /etc/default/isc-dhcp-server:

Page 3: Servidor DHCP - in Secure · clientes: o dhcpcd, ou o pump. O servidor disponível é o dhcpd da ISC. Antes de instalar um servidor DHCP, o administrador deve pesar os prós e contras

/etc/default/isc-dhcp-server

# Defaults for isc-dhcp-server initscript

# sourced by /etc/init.d/isc-dhcp-server

# installed at /etc/default/isc-dhcp-server by the maintainer

scripts

# This is a POSIX shell fragment

# [...]

# On what interfaces should the DHCP server (dhcpd) serve DHCP

requests?

# Separate multiple interfaces with spaces, e.g. "eth0 eth1".

INTERFACES="eth0"

A parte principal da configuração é mantida no ficheiro /etc/dhcp/dhcpd.conf.

Neste arquivo é indicado o nome de domínio (option domain-name “home.lan”;), os

endereços dos servidoresDNS (option domain-name-servers 192.168.1.100,

192.168.1.1;). Na opção domain-name-servers poderá indicar o nome do servidor dns local

(exemplo: ns.home.lan) em vez do endereço ip, caso tenha o configurado o servidor DNS.

É também definida a duração normal e máxima da atribuição do endereço IP atribuído

(default-lease-time 600; max-lease-time 7200;). O cliente poderá sempre pedir uma nova

atribuição antes da atual expirar, podendo receber ou não o mesmo endereço IP.

Finalmente, para o segmento de rede 192.168.1.0, é indicada a gama de endereços

disponível para a atribuição (range 192.168.1.32 192.168.1.63;), qual o router a utilizar

(option routers 192.168.1.1;) e qual o endereço debroadcast (option broadcast-address

192.168.1.255;)

/etc/dhcp/dhcpd.conf

# Sample configuration file for ISC dhcpd for Debian

# The ddns-updates-style parameter controls whether or not the

server will

# attempt to do a DNS update when a lease is confirmed. We default

to the

Page 4: Servidor DHCP - in Secure · clientes: o dhcpcd, ou o pump. O servidor disponível é o dhcpd da ISC. Antes de instalar um servidor DHCP, o administrador deve pesar os prós e contras

# behavior of the version 2 packages ('none', since DHCP v2 didn't

# have support for DDNS.)

ddns-update-style none;

# option definitions common to all supported networks...

option domain-name "home.lan";

option domain-name-servers 192.168.1.100, 192.168.1.1;

default-lease-time 600;

max-lease-time 7200;

# If this DHCP server is the official DHCP server for the local

# network, the authoritative directive should be uncommented.

authoritative;

# [...]

## SubNet home.lan

subnet 192.168.1.0 netmask 255.255.255.0 {

range 192.168.1.32 192.168.1.63;

option routers 192.168.1.1;

option broadcast-address 192.168.1.255;

}

O protocolo DHCP possibilita a atribuição endereços específicos a determinados sistemas,

associando o número da placa de rede ao endereço pretendido. No entanto, estes

endereços fixos não devem estar na gama dos endereços reservados para atribuição

dinâmica.

/etc/dhcp/dhcpd.conf

# [...]

Page 5: Servidor DHCP - in Secure · clientes: o dhcpcd, ou o pump. O servidor disponível é o dhcpd da ISC. Antes de instalar um servidor DHCP, o administrador deve pesar os prós e contras

# Fixed IP addresses can also be specified for hosts. These

addresses

# should not also be listed as being available for dynamic

assignment.

# Hosts for which fixed IP addresses have been specified can boot

using

# BOOTP or DHCP. Hosts for which no fixed address is specified

can only

# be booted with DHCP, unless there is an address range on the

subnet

# to which a BOOTP client is connected which has the dynamic-bootp

flag

# set.

host desktop {

hardware ethernet 01:23:45:67:89:10;

fixed-address 192.168.1.2;

}

host laptop {

hardware ethernet 01:23:45:67:89:11;

fixed-address 192.168.1.3;

}

# [...]

Reiniciar o serviço dhcp:

root@server:~# /etc/init.d/isc-dhcp-server restart

Page 6: Servidor DHCP - in Secure · clientes: o dhcpcd, ou o pump. O servidor disponível é o dhcpd da ISC. Antes de instalar um servidor DHCP, o administrador deve pesar os prós e contras

Configuração dos clientes

Linux

Num cliente Linux, basta instalar o pacote dhcp client. A configuração gerada durante a

instalação deverá ser suficiente.

root@server:~# aptitude install isc-dhcp-client

Windows

Num cliente Windows, deverá ser ativada a opção “Obter automaticamente um endereço

IP”, nas propriedades TCP/IP da interface de rede. Numa rede caseira, com acesso à

Internet via modem ADSL ou cabo, esta opção deverá, em princípio, já estar ativada.

Entendendo o exemplo acima:

A linha 1:

ddns-update-style

diz respeito a forma que o DHCP irá armazenar as informações de redes dos

clientes. Atualmente são implementados dois esquemas de atualização do DNS — o

modo de atualização do DNS improvisado e o modo de atualização do esquema de

interação do intervalo DHCP-DNS. O servidor

DHCP deve ser configurado para usar um dos dois esquemas atuais. A versão

3.0b2pl11 e a anterior usaram o modo improvisado; no entanto, este não é mais

Page 7: Servidor DHCP - in Secure · clientes: o dhcpcd, ou o pump. O servidor disponível é o dhcpd da ISC. Antes de instalar um servidor DHCP, o administrador deve pesar os prós e contras

aprovado.

Exemplos:

Este modo desativa o suporte a DNS dinâmico:

ddns-update-style none;

Para manter o mesmo comportamento e compatibilidade com versões anteriores,manter a

linha no topo do arquivo de configuração:

ddns-update-style ad-hoc;

Adicione esta outra para usar o modo recomendado, no topo do arquivo de

configuração, basicamente essa linha será apenas pra manter o padrão de suporte a

versão mais antiga:

ddns-update-style interim;

Note na Figura 1 que o servidor configura uma rede 192.168.1 na faixa entre

192.168.1.10 e 192.168.1.100 e entre 192.168.1.150 e 192.168.1.200.

Além disso, como mostra essa mesma figura, é possível usar o DHCP para atribuir

automaticamente um endereço específico a uma dada máquina. No caso, a máquina com

placa de rede possuidora do endereço MAC 08:00:2b:4c:59:23 receberá o nome dbowie e

o endereço 192.168.1.6.

Com o uso da diretiva host, inclusive, é possível incrementar a segurança na rede,

pois apenas máquinas com placas de redes já conhecidas poderão utilizar os recursos de

rede. Entretanto isso implicará em trabalho adicional para o administrador que precisará

identificar o endereço MAC de qualquer placa de rede que precise de acesso à rede. Note

que o endereço MAC de uma dada máquina host1 pode ser verificado através do

comando arp -a host1.

$ arp -a host1

8.4 Arquivo leases do dhcp

O arquivo para verificar as concessões de endereços aos hosts está localizado em :

/var/lib/dhcp/dhcpd.leases.

Muitas vezes precisamos acessar computadores remotamente, no entanto não

sabemos os seus respectivos endereçamentos IPs. Por exemplo, acessar o computador

vendas, ou ainda faturamento.

Para visualizar os hosts clientes acessar o arquivo leases em:

Page 8: Servidor DHCP - in Secure · clientes: o dhcpcd, ou o pump. O servidor disponível é o dhcpd da ISC. Antes de instalar um servidor DHCP, o administrador deve pesar os prós e contras

$ less /var/lib/dhcp3/dhcpd.leases

lease 192.168.9.8 {

starts 3 2010/04/26 21:41:20;

ends 4 2010/04/27 03:41:20;

binding state active;

next binding state free;

hardware ethernet 00:07:95:fa:3d:93;

} Logo em seguida aparecerão os endereços que foram atribuídos dinamicamente

pelo serviço DHCP.

Estes dados podem ser obtidos também através do comando a seguir, que mostra

um log geral do sistema, inclusive do serviço DHCP.

# less /var/log/messages

No host cliente pode-se também, através do arquivo /var/lib/dhcp3/dhclient.leases,

todas as locações feitas pelo host.

$ less /var/lib/dhcp3/dhclient.leases

lease {

interface "wlan0";

fixed-address 192.168.1.76;

option subnet-mask 255.255.255.0;

option routers 192.168.1.75;

option dhcp-lease-time 7200;

option dhcp-option-overload 3;

option dhcp-message-type 5;

option domain-name-servers 192.168.1.75,192.168.1.1;

option dhcp-server-identifier 192.168.1.1;

option interface-mtu 576;

option broadcast-address 255.255.255.255;

renew 2 2010/05/11 13:47:13;

rebind 2 2010/05/11 13:47:13;

expire 2 2010/05/11 13:47:13;

}

Page 9: Servidor DHCP - in Secure · clientes: o dhcpcd, ou o pump. O servidor disponível é o dhcpd da ISC. Antes de instalar um servidor DHCP, o administrador deve pesar os prós e contras

lease {

interface "eth0";

fixed-address 10.40.31.38;

option subnet-mask 255.255.0.0;

option dhcp-lease-time 28800;

option routers 10.40.0.1;

option dhcp-option-overload 3;

option dhcp-message-type 5;

option dhcp-server-identifier 10.40.31.35;

option domain-name-servers 10.40.0.2,10.40.0.1;

option interface-mtu 576;

option broadcast-address 255.255.255.255;

renew 2 2010/05/11 12:10:46;

rebind 2 2010/05/11 12:10:46;

expire 2 2010/05/11 12:10:46;

} 8.6 Inicializando o servidor dhcp

- parar o servidor dhcp:

# /etc/init.d/dhcp stop

- iniciar o servidor dhcp:

# /etc/init.d/dhcp start

- reinciar o servidor dhcp:

# /etc/init.d/dhcp restart

8.7 Outro exemplo de arquivo /etc/dhcp3/dhcpd.conf

Outro exemplo de arquivo dhcpd.conf pode ser visualizado na Figura 2 a seguir:

# authoritative;

# opcional – ver abaixo

# log-facility local7;

# opcional – ver abaixo

ddns-update-style ad-hoc;

default-lease-time 172800; # 2 dias

max-lease-time 345600; # 4 dias

Page 10: Servidor DHCP - in Secure · clientes: o dhcpcd, ou o pump. O servidor disponível é o dhcpd da ISC. Antes de instalar um servidor DHCP, o administrador deve pesar os prós e contras

subnet 192.168.1.0 netmask 255.255.255.0 {

option subnet-mask 255.255.255.0;

option broadcast-address 192.168.1.255;

option routers 192.168.1.2;

option domain-name "empresa.com.br";

option domain-name-servers 192.168.1.2,192.168.1.3;

option ntp-servers 192.168.1.2;

# aponta para o servidor wins caso haja

#option netbios-name-servers 192.168.1.3;

range 192.168.1.100 192.168.1.200;

host estacao

{

hardware ethernet 00:00:00:00:00:00;

fixed-address 192.168.1.90; }

}

Outros itens de configuração do DHCP:

authoritative;

Informa que esse é o servidor DHCP com autoridade sobre a rede.

Sempre mantenho um único servidor DHCP na rede, porém, caso se tenha mais de

um é bom definir qual é o principal.

Caso se queira alterar o local do log do dhcp dos arquivos /var/log/syslog

e/var/log/daemon.log, no arquivo dhcpd.conf coloca-se a seguinte linha:

log-facility local7;

A seguir, editar o arquivo /etc/rsyslog.conf e adicionar:

local7.*

/var/log/dhcpd.log

Após isso reinicia-se o serviço do syslog e aí sim reinicia o serviço do dhcp e então o

novo endereço do log do dhcp passa a ser:

/var/log/dhcpd.log