PXE (Preboot eXecution Environment) is a client-server environment which makes possible to boot and install operating systems without the need of physical media. The core idea is quite simple: in a very early stage, a client gets an IP address from a DHCP server and downloads the files needed to perform the boot process via the tftp protocol (Trivial ftp). In this tutorial we will use the dnsmasq
application: it can be used as a primary DHCP server or in proxy DHCP mode if another DHCP server exists in the network; it also provides the tftp service used to transfer files.
In this tutorial you will learn:
- How to configure pxelinux and create a boot menu
- How to extract files from an ISO and setup the appropriate file structure
- How to configure dnsmasq as a standard or proxy DHCP server
- How to configure the tftp server embed in dnsmasq
- How to allow traffic through the needed ports using ufw