Inicio > General > Instalación de un servidor PXE en Debian 6

Instalación de un servidor PXE en Debian 6

Con este post, explicare como instalar un servidor PXE para poder hacer instalaciones de debian sin necesidad de disponer de lector de CD’s.

Servidor DHCP + NAT

El primer paso es instalar un servidor de DHCP para ofrecer IP’s dinámicas a los equipos. Lo instalamos con los siguientes comandos.

aptitude install isc-dhcp-server

Una vez instalado el servicio, necesitamos indicar por que tarjeta da el servicio de dhcp.

vi /etc/default/isc-dhcp-server

En nuestro caso, el servidor da IP’s del rango privado por la tarjeta eth1, si solo tuviera una tarjeta no sería necesario editar este fichero

INTERFACES="eth1"

El fichero tiene que quedar así:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet static
address 172.16.0.30
netmask 255.255.255.0
gateway 172.16.0.1
#up route add -host 255.255.255.255 eth0

auto eth1
iface eth1 inet static
address 192.168.0.30
netmask 255.255.255.0
gateway 172.16.0.30

Para habilitar la conexión de la subred hacia internet, necesitamos habilitar NAT en el sistema

vi /etc/sysctl.conf

Y modificamos la siguiente línea.

net.ipv4.ip_forward=1

Luego reiniciamos el demonio networking de la siguiente forma:

invoke-rc.d networking restart

Y por último, debemos añadir una línea en la lista de reglas de iptables: Es necesario ejecutar esta instrucción cada vez que se reinicia el equipo.

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

Ahora es necesario configurar el servidor de DHCP, para eso editamos el fichero de configuración:

vi /etc/dhcp/dhcpd.conf

Y la configuración en nuestro caso es la siguiente:

# 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
# 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 "trigo.cat";

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;

# Use this to send dhcp log messages to a different log file (you also
# have to hack syslog.conf to complete the redirection).
log-facility local7;


subnet 192.168.0.0 netmask 255.255.255.0 {
#  range 192.168.0.10 192.168.0.20;
  option routers 192.168.0.30;
  option domain-name "trigo.cat";
  option domain-name-servers 8.8.8.8;
  option ntp-servers hora.rediris.es;
  
  #Grupo de maquinas 0
  group {
    filename "pxelinux.0";
    next-server 192.168.0.30;

    host host1 {
      hardware ethernet 08:00:27:0C:54:41;
      fixed-address 192.168.0.21;
    }
  }

}

Ahora es necesario reiniciar el servicio de dhcp

/etc/init.d/isc-dhcp-server restart

Instalación servidor TFTP

Ahora instalamos el servidor de TFTP

aptitude install tftpd-hpa

En la configuración, podemos dejar la carpeta por defecto “/srv/tftp”

Ahora vamos a la carpeta del servidor tftp, y descargamos la imagen de la instalación

 
cd /srv/tftp
wget http://ftp.debian.org/debian/dists/squeeze/main/installer-i386/current/images/netboot/netboot.tar.gz

Una vez descargada, la descomprimimos

tar -zxvf netboot.tar.gz

Por último, configuramos la BIOS los clientes para que arranquen desde PXE, y ya podemos utilizar nuestro servidor.

Hay que tener presente, que el servidor tftp tiene que estar en la misma subred (192.168.0.X) que el cliente, sino no es capaz de conectarse.

Categorías:General Etiquetas: , ,
  1. Marcos D. C.
    junio 26, 2012 a las 10:14 pm

    Hola, como estas? me parecio muy interesante el post, ando con ganas de armar algo parecido. Quiero clonar particiones y/o discos de distintos sistemas entre ellos Ubuntu, Rxart, Windows 7 y Windows xp. Voy a utilizar tu tuto a ver como me va, pero tendria que ver la forma de crear un menu en el cual la maquina cliente pueda elejir el sistema que quiera clonar o la particion. Es posible hacerlo ? supongo que si, no?
    Saludos

    • junio 27, 2012 a las 9:44 am

      Sí, es posible, mírate el paquete syslinux, puedes hacer un menú con el.
      Si tengo un rato haré algún tutorial.
      Saludos.

  2. Marcos D. C.
    junio 27, 2012 a las 6:29 pm

    ok, muchas gracias por el dato. Estuve probando el Openirudi y al final no lo pude hacer funcionar en la primera y no lo toque mas pero tendria que revisar el problema creo que esta en mi declaracion de subred.
    Pero me gustaria hacerlo a tu forma asi que lo voy a intentar cuando me venga un tiempo libre y te comento, si llego a tener problemas no te molestaria que te consulte ?

    • junio 28, 2012 a las 11:36 am

      Ningún problema, siéntete libre de preguntar, si tengo tiempo ya hablamos del tema.
      Saludos.

  1. junio 28, 2012 a las 11:58 am

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: