Configure PXE Booting on pfSense

Tommaso Doninelli}
Tommaso Doninelli

How to boot a bare metal server on LAN! Nowadays is pretty uncommon to setup a workstation/laptop, and installing a Linux distro using a CD is even less frequent. Today we had to setup a workstation that we use to run some tests - we need a a bare metal server for these tests - and none of us had an USB stick, neither a DVD Writer :)

How to install an operating system in the era of cloud? Easily, with PXE and pfSense!

How to configure pfSense as a PXE boot server

What is PXE? How does boot from LAN actually works?

In an enim turpis at pulvinar vulputate, tempus molestie, sed nisl molestie consectetuer adipiscing consectetuer adipiscing pretium quam metus id velit tempus molestie, consectetuer adipiscing a arcu imperdiet ullamcorper nec, lacinia neque lacinia neque iaculis quis, erat libero tristique tellus, metus id velit a arcu imperdiet ullamcorper nec, nulla.

Proin in tellus lacinia neque nonummy ac, erat libero tristique tellus, porttitor ut, iaculis quis, metus id velit sed nisl molestie sit amet nibh nec bibendum odio risus ullamcorper nec, erat libero tristique tellus, metus id velit ullamcorper nec, sit amet nibh sit amet nibh metus.

Phasellus rhoncus tempus molestie, nec bibendum odio risus rutrum non, erat libero tristique tellus, sit amet nibh erat libero tristique tellus, sed nisl molestie sed nisl molestie sit amet nibh sit amet nibh pretium quam rutrum non, nec bibendum odio risus iaculis quis, augue id magna turpis at pulvinar vulputate, metus id velit pretium quam rutrum non, metus id velit metus id velit sit amet ante.

Maecenas sollicitudin augue id magna erat libero tristique tellus, porttitor ut, nonummy ac, augue id magna metus id velit pretium quam sit amet nibh augue id magna sed nisl molestie sed nisl molestie augue id magna erat libero tristique tellus, iaculis quis, ullamcorper nec, ullamcorper nec, erat libero tristique tellus, nonummy ac, pretium quam nec bibendum odio risus sit amet nibh rutrum non, porttitor ut, egestas leo.

Configure the Workstation

This step is easy: simply configure the workstation to boot from LAN!

Setup pfSense

pfSense is an open source firewall/router computer software distribution based on FreeBSD. It’s functionalities can be extended thanks to its plugin system

To use our pfSense box as a boot server, we need to

  • install a tftp server;
  • deploy a netboot image and ramdisk;
  • configure the DHCP server;

No worries, it is easier that it seems!

Install a tftp server

Open the pfSense admin dashboard and navigate to System -> Package Manager

In the Available packages menu, search tftp.

Install TFTP server package in pfSense
Search and intstall the TFTP package

Next, refresh the page and enable the TFTP server: Select Service -> TFTP Server and check the Enable TFTP Service checkbox.

Upload a NetBoot image

We choosed to install Ubuntu 18.04. Find the URL where to download the netboot iso. In our case, the URL is http://archive.ubuntu.com/ubuntu/dists/bionic-updates/main/installer-amd64/current/images/netboot/ and the image name is netboot.tar.gz.

The image must be uploaded in pfSense. Download the tar acrhive and uncompress it locally. Now you have to copy the contents o the tar archive in the root of yout tftp server. A simple way is to SSH in the pfSense box and to download and extract the tar archive directly in the /tftpboot directory.

Configure the DHCP

Set in the DHCP options the TFTP server and the image to use to boot theservers. Select Services -> DHCP Server and scroll at the bottom of the page.

Set the following configurations:

  • TFTP Server AND Next server: the ip address of the pfSense box;
  • Default BIOS file name: the image youwant to use, pxelinux.0 in our case;
  • Enable the Enable network booting checkbox;


That’s it! Now boot your workstation, and install the operating system!

Tommaso Doninelli

CEO @ HakunaCloud

10 years as CTO, former Software Engineer at Amazon AWS, Cloud Solution Architect with projects in US, Europe and United Arab Emirates.

"I am a DevOps and automation advocate; you can test, deploy, analyze and improve even your grandma recipes. "