Configure PXE Booting on pfSense

PXE Booting on pfSense.docx

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 🙂

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.

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;

Conclusions

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

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s