SafeChildren Banner

Havoc Oracle Solaris Experts
Mostrando entradas con la etiqueta dhcp. Mostrar todas las entradas
Mostrando entradas con la etiqueta dhcp. Mostrar todas las entradas

viernes, 4 de junio de 2010

Instalar ISC DHCP en Solaris 10

Introducción
En esta ocasión vamos a ver Cómo Instalar un Servidor DHCP Paso a Paso en Solaris 10. Tener en cuenta que Solaris cuenta con un servidor DHCP, sin embargo, vamos a utilizar el que nos proporciona ISC ya que es muy ligero y sencillo de configurar, además, es el servidor DHCP "de facto" en FreeBSD.

Compilación de ISC DHCP
Lo primero que debemos hacer es decargarnos el código fuente desde la web de ISC, en nuestro caso vamos a utilizar la versión 4.1.1-P1 que no tiene dependencias con BIND. Lo configuraremos con las opciones <paranoia> y con un <prefix> personalizado para que se instale en el directorio </opt/dhcpd>
$ wget http://ftp.isc.org/isc/dhcp/dhcp-4.1.1-P1.tar.gz
$ gtar zxpf dhcp-4.1.1-P1.tar.gz
$ cd dhcp-4.1.1-P1
$ ./configure --prefix=/opt/dhcpd --enable-paranoia
$ make
# make install
Instalación
Vamos a crear un usuario llamado <dhcp>, grupo <dhcpd> y project para el grupo <group.dhcpd>
# groupadd dhcpd
# useradd -g dhcpd -s /bin/false -d /dev/null -g dhcpd dhcpd
# projadd -c 'DHCP Project' group.dhcpd
Creación de la base de datos de concesiones y PID
Debemos crear el archivo que contendrá las concesiones creadas, ya que ISC DHCP no lo creará, en nuestro caso vamos a utilizar el directorio </var/dhcpd> para almacenar el pid y la base de datos. Estos parámetros son configurables como veremos más adelante
# mkdir /var/dhcpd
# chown dhcpd:dhcpd /var/dhcpd
# chomod 700 /var/dhcpd
# touch /var/dhcpd/dhcpd.leases
Configuración del Servidor ISC DHCP
El archivo de configuración se encuentra en <$DHCP_HOME/etc/dhcpd.conf> y su estructura es muy sencilla. Todas las líneas de configuración deben acabar con <;>, sino el servidor no se iniciará y nos indicará que hay un error en el archivo de configuración.
Dentro de él tendremos la sección "global" -que será todo el archivo- y diferentes "subsecciones" identificadas como:
_nombre_ {
 option ...  ;
 option ...  ;
}
Tenemos el archivo de configuración con varios ejemplos que podemos utilizar para comenzar con nuestro propio diseño, por ello, vamos a realizar una copia -por si acaso- y siempre podremos verificar la sintaxis del archivo de configuración
# cat dhcpd.conf > dhcp.conf.ORIGINAL
Simplemente modificaremos los siguientes parámetros del archivo
option domain-name "test.com";
option domain-name-servers ns1.test.com, ns2.test.com;
authoritative;
log-facility local5;
A continuación declararemos el rango DHCP que queremos ofrecer, para ello, debemos crear una subsección por cada uno de los rangos, en nuestro ejemplo, para el rango 192.168.25.0
subnet 192.168.25.0 netmask 255.255.255.0 {
  range 192.168.25.5 192.168.25.200;
  option domain-name-servers ns1.internal.test.com;
  option domain-name "internal.test.com";
  option routers 192.168.25.254;
  option broadcast-address 192.168.25.255;
  default-lease-time 600;
  max-lease-time 7200;
}
Si queremos añadir soporte para que nuestro DHCP exporte el archivo de configuración del proxy, deberemos incluir en la sección global -después de <authoritative>- las siguientes entradas
# PAC Support
option local-pac-server code 252 = text;
option local-pac-server "http://URL_del_proxy/proxy.pac";
Configuración SysLog
Hemos definido como parámetro <log-facility local5> para ello, vamos a declararlo en nuestro syslog
# vi /etc/syslog.conf
  # DHCP Log
  local5.debug                                    /var/log/dhcpd.log
 :wq
# touch /var/log/dhcpd.log
# chmod 600 /var/log/dhcpd.log
# chown root:sys /var/log/dhcpd.log
# svcadm restart system-log
Configurar el servicio mediante Solaris SMF
He creado los archivo de <manifest y method> para estos servicios o podéis crear los vuestos  si queréis, podéis descargar Manifest para ISC DHCP Solaris 10 SMF y el Method ISC DHCP Solaris 10 SMF
# cd /lib/svc/method
# /usr/sfw/bin/wget http://blog.sfchildren.com/blogger/isc-dhcp-solaris/svc/isc-dhcp_4
# chown root:sys isc-dhcp_4
# chmod 555 isc-dhcp_4
# /var/svc/manifest/network
# /usr/sfw/bin/wget http://blog.sfchildren.com/blogger/isc-dhcp-solaris/svc/isc-dhcp_4.xml
# chown root:sys  isc-dhcp_4.xm
# chmod 444 isc-dhcp_4.xml
# svccfg
svc:> validate isc-dhcp_4.xml
svc:> import isc-dhcp_4.xml
svc:> quit
# svcs isc-dhcp_4
STATE          STIME    FMRI
disabled       12:38:48 svc:/network/isc-dhcp_4:default_32bits
# svcadm enable isc-dhcp_4
# svcs isc-dhcp_4
STATE          STIME    FMRI
online         12:40:08 svc:/network/isc-dhcp_4:default_32bits
Conclusión
El servidor DHCP de ISC nos permite una puesta en marcha muy rápida, y es muy sencillo de administrar. Además al incluirlo dentro del framework de SMF podemos gestionarlo de forma sencilla igual que otro servicio más.

Referencias