Mostrar mensagens com a etiqueta tftp. Mostrar todas as mensagens
Mostrar mensagens com a etiqueta tftp. Mostrar todas as mensagens

domingo, 23 de junho de 2013

PXE Boot Server

Criar um servidor de imagens PXE com Debian Wheezy

Iniciando com uma máquina Debian já instalada é preciso:

  1. Instalar o TFTP e DHCP
  2. Configurar o TFTP e DHCP
  3. Criar uma imagem PXE
O servidor DHCP escolhido é o isc-dhcp-server e o servidor TFTP é o tftpd-hpa.
A interface onde vai funcionar o servidor DHCP tem de estar já configurada e ter um IP estático (não pode haver dois servidores DHCP no mesmo segmento de rede).

1. Instalar o TFTP e DHCP


Como de costume com Debian, a instalação é muito simples, a configuração é que é complicada.

aptitude install isc-dhcp-server tftpd-hpa

2. Configurar o TFTP e o DHCP


nano /etc/default/tftpd-hpa


TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/srv/tftp"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="--secure"

nano /etc/default/isc-dhcp-server

INTERFACES="eth1"

nano /etc/dhcp/dhcpd.conf

allow booting;
allow bootp;
authoritative;
subnet 10.0.0.0 netmask 255.255.255.0 {
        range dynamic-bootp 10.0.0.20 10.0.0.100;
        option routers 10.0.0.254;
        option broadcast-address 10.0.0.255;
        option domain-name-servers 208.67.222.222;
        allow unknown-clients;
        next-server 10.0.0.254;
        filename "pxelinux.0";
}

Reiniciar os serviços:

service tftpd-hpa restart
service isc-dhcp-server restart

3. Criar uma imagem PXE

aptitude install debootstrap nfs-kernel-server
mkdir /srv/tftp/pxeroot
debootstrap wheezy /srv/tftp/pxeroot
cd /srv/tftp/pxeroot
nano etc/network/interfaces
auto loiface lo inet loopbackauto eth0iface eth0 inet dhcp
nano etc/fstab
/dev/ram0  /       ext2   defaults    0   0proc       /proc      proc   defaults    0   1tmpfs      /tmp       tmpfs  defaults    0   1
chroot /srv/tftp/pxeroot

aptitude install linux-image-486
aptitude install partimage
aptitude install locales
dpkg-reconfigure locales
adduser root
adduser user
aptitude install xorg icewm slim
exit

cd /srv/tftp
wget http://ftp.debian.org/debian/dists/wheezy/main/installer-i386/current/images/netboot/pxelinux.0
cp pxeroot/vmlinuz ./
cp pxeroot/initrd.img ./
mkdir pxelinux.cfg
nano pxelinux.cfg/default

default menu.c32prompt 0timeout 300ONTIMEOUT local
MENU TITLE Welcome to PXE
LABEL Debian Wheezy x86 MENU LABEL Debian Wheezy x86 KERNEL images/deb-installer/linux APPEND initrd=images/deb-installer/initrd.gz
LABEL linux    kernel pxeroot/vmlinuz    append vga=normal initrd=pxeroot/boot/initrd.img-3.2.0-4-486 ramdisk_size=14332 root=/dev/nfs nfsroot=10.0.0.254:/srv/tftp/pxeroot rw --
nano /etc/exports
/srv/tftp/pxeroot    10.0.0.0/255.255.255.0(rw,sync,no_root_squash,no_subtree_check)
service nfs-kernel-server restart