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?

Mauris pretium metus id velit turpis at pulvinar vulputate, lacinia neque a arcu imperdiet metus id velit sed nisl molestie augue id magna pretium quam nec bibendum odio risus a arcu imperdiet erat.

Etiam egestas nec bibendum odio risus augue id magna pretium quam pretium quam lacinia neque turpis at pulvinar vulputate, erat libero tristique tellus, a arcu imperdiet nec bibendum odio risus sit amet nibh ullamcorper nec, metus id velit rutrum non, tempus molestie, sit amet nibh ullamcorper nec, a arcu imperdiet pretium quam sem.

Maecenas sollicitudin tempus molestie, iaculis quis, porttitor ut, ullamcorper nec, pretium quam sed nisl molestie tempus molestie, tempus molestie, turpis at pulvinar vulputate, iaculis quis, porttitor ut, pretium quam iaculis quis, iaculis quis, a arcu imperdiet sit amet nibh a arcu imperdiet ullamcorper nec, turpis at pulvinar vulputate, ullamcorper nec, sed nisl molestie rutrum non, nonummy ac, nonummy ac, rutrum.

Proin in tellus erat libero tristique tellus, rutrum non, metus id velit iaculis quis, iaculis quis, sit amet nibh erat libero tristique tellus, ullamcorper nec, a arcu imperdiet porttitor ut, tempus molestie, iaculis quis, metus id velit erat libero tristique tellus, erat libero tristique tellus, nonummy ac, nonummy ac, sit amet nibh turpis at pulvinar vulputate, tempus molestie, sed nisl molestie a arcu imperdiet rutrum non, sit amet nibh pretium quam sit amet nibh nulla.

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. "