Servidor DHCP en Ubuntu 14.04, 14.10 y Debian 6, 7

Publicado por firecold, Enero 16, 2015, 03:59:26 AM

Tema anterior - Siguiente tema

firecold

Bienvenidos amigos del Foro Alterserv.com en esta ocasion tendremos una guia de como instalar y configurar un Servidor DHCP en Ubuntu 14.04, 14.10 como Debian 6 y 7, la configuracion como la instalacion son iguales, pero antes miremos que dice Wikipedia de que es un DHCP:
CitarDHCP (siglas en inglés de Dynamic Host Configuration Protocol, en español «protocolo de configuración dinámica de host») es un protocolo de red que permite a los clientes de una red IP obtener sus parámetros de configuración automáticamente. Se trata de un protocolo de tipo cliente/servidor en el que generalmente un servidor posee una lista de direcciones IP dinámicas y las va asignando a los clientes conforme éstas van quedando libres, sabiendo en todo momento quién ha estado en posesión de esa IP, cuánto tiempo la ha tenido y a quién se la ha asignado después.

Debemos aceptar que un Servidor DHCP nos facilita la vida, ya que no tenemos que estar configurando manualmente cada equipo de nuestra red y como administradores de Redes entre menos tiempo utilicemos en configuraciones innecesarias mas tiempo tendremos para dedicarles a otros problemas que realmente necesitan de nuestra atención y mas cuando tenemos muchos equipos en nuestra red.

En esta guía procederemos a instalar y configurar nuestro DHCP sin un servidor DNS, si deseas configurar tu Servidor DHCP con DNS puedes revisar esta guía, aunque en ella detallo mas la configuración del Servidor DNS: Enlace

INSTALACION

Tanto en Debian como en Ubuntu instalaremos el mismo paquete:
Código (bash) [Seleccionar]
apt-get install isc-dhcp-server
Con esto procedera a instalar todos los paquetes necesarios, tambien debemos saber que los ficheros de configuracion principal de dicho paquete se encuentran en:
/etc/default/isc-dhcp-server
/etc/dhcp/dhcpd.conf


CONFIGURACION

Despues de la Instalacion procederemos a editar el archivo /etc/default/isc-dhcp-server, editando la linea donde aparece:
INTERFACES=" "

Y en la parte entre comillas procederemos a colocar la interface de red que queremos que use el servicio DHCP, de este modo:
INTERFACES="eth1"

Siendo eth1 la interface que se dirige o apunta hacia la red lan, en algunas ocasiones me han hecho la pregunta que si puedo agregar otra interface de red y claro que se puede dejando un espacio en blanco entre cada interface de este modo:
INTERFACES="eth1 eth2"

El segundo archivo de configuracion es /etc/dhcp/dhcpd.conf, el fichero consiste en una lista de directivas que podemos clasificar en dos grandes grupos:

CitarParámetros.
Los parámetros indican qué debe hacer el servidor y cómo debe hacerlo así como qué parámetros y con qué valores se asignarán a los clientes.

Tipos de Parámetros:
Todos los parámetros que empiezan con "option" describen datos que proporciona el servidor al cliente y que forma parte del protocolo.
Formato: option <nombre_parametros>   [valores]:
Los parámetros que van sin "option" describen características del servidor DHCP.

Declaraciones.
Las declaraciones permiten describir la topología de la red, indicar las características de los clientes, determinar qué rango de direcciones IP serán asignadas a los clientes. También permiten agrupar opciones de configuración (parámetros) y asignarlas a un grupo de declaraciones.

PARAMETROS Y SIGNIFICADO

Estos son los parámetros mas importantes y que veras en la mayoría de Servidores DHCP, siendo de mucha utilidad la mayoría tanto por seguridad como para una correcta configuración.




Citarone-lease-per-client on;
Cuando esta opción está en "on" y un cliente solicita una asignación, el servidor libera automáticamente cualquier otra asignación que tenga ese cliente. Se supone que si el cliente hace una solicitud es porque ha olvidado que tuviera alguna, es decir tiene un solo interfaz de red. Si no se da esta situación en los clientes hay que usar este parámetro con precaución.

server-identifier IP;
Este parámetro identifica el nodo que alberga el servicio DHCP. Sólo se deber usar cuando el nodo tenga más de una dirección IP asignada al interfaz.

option netbios-name-servers IP;
Definimos ls dirección del servidor WINS para NetBios. Solamente en caso de ser necesario, usado mas que nada cuando se usa un servidor de archivos como samba

Ahora bien tomando en cuenta los parametros anteriores, podremos configurar nuestro servidor DHCP, sabiendo que una mala configuracion tambien puede causar estos problemas:




En algunos casos tendran internet y podran navegar, pero con algunos problemas de seguridad que cualquier sistema operativo podra detectar, pero en algunos casos ni podran conectarse al servidor DHCP, en mis pruebas me tope con algunas malas configuraciones en las cuales me decia que no tenia acceso a internet pero si lo tenia, pero advierte que algunos parametros estan incompletos, veremos como ejemplo mi configuracion actual de prueba sin servidor DNS:

Citarserver-identifier ns1.leondejuda.gt; # Como me identifico en localhost
ddns-update-style none;  # ninguna actualizacion del DNS ya que no lo uso.
ignore client-updates;  # ignorar o no permitir la actualizacion del DNS en caso que el cliente lo pida.
authoritative;  # como este es el unico Servidor DHCP de la red, le sedo la mayor importancia.

subnet 192.168.1.0 netmask 255.255.255.0 {  # declarando una subred
   option domain-name-servers 8.8.8.8, 8.8.4.4;  # declarando Servidores DNS externos.
   option domain-name "leondejuda.gt";  # declarando mi nombre de Dominio.
   option routers 192.168.1.1; # declarando mi Puerta de enlace.
   option broadcast-address 192.168.1.255;   # Declarando mi direcccion de Difusion o broadcast.
   option subnet-mask 255.255.255.0;   # Declarando mi mascara de subred.
        option netbios-name-servers 192.168.1.1;  # esta opcion me ayuda con samba.
        option netbios-dd-server 192.168.1.1;   # esta opcion me ayuda con samba.
        option netbios-node-type 8;  # esta opcion me ayuda con samba.
        range 192.168.1.2 192.168.1.7;   #  Rango de Ips que el Servidor DHCP dara en uso.
        }

Si se dan cuenta declaro todos los parametros option, dentro de la subred como parametros locales, esto por mayor seguridad, ya que muchas veces pasa como los errores anteriores y mas cuando declaramos varias subredes, siendo de vital importancia en cada subred declarar: nombre de dominio, puerta de enlace o gateway, broadcast, mascara de subred, servidores DNS, rango de subred, ya que son parametros importantes cuando uno configura una interface de red manualmente, obteniendo este resultado:



Un servidor DHCP correctamente configurado no les causara ningun problema y como dije anteriormente les facilitara la vida, en mi caso asigno un rango pequeño o justo a mis necesidades, para evitar usuarios indeseados, como tambien agrego una acl en squid para permitir las mismas IPS que hace uso el Servidor DHCP.

Fuentes: DHCP en Ubuntu, Servicio DHCP en Linux, option.

Espero les Sirva, Saludos