When you first learn about homelabs, you come across a lot of content. One of the things that is repeatedly mentioned, if you do a search on YouTube, is Virtualbox. This makes a lot of sense, as it’s free, and does its job rather well. At least, that’s my opinion. While I currently use VMWare as my hypervisor due to ECPI making a license available for students, I have used Virtualbox in anticipation of losing access to that license, and found the process of spinning up VM’s to be very familiar. I also find the performance to be equivalent for my needs.
My journey into homelabbing with VMs began with VMWare Workstation due to a class at ECPI requiring it. Then, as I began watch YouTube videos to supplement what I was learning in class, I began to look into homelabs and virtualization. As I spent more time watching videos on YouTube about homelabs, videos that recommended Virtualbox, or based a project on Virtualbox, kept coming up
Now, there’s a particular homelab that was developed by a Cybersecurity professional and content creator, Day Cyberwox. This homelab is described as a “Cybersecurity Homelab for Detection and Monitoring”, and was incredibly attractive to me, because it incorporates a firewall, Security Onion for “IDS, Security Monitoring, and Log Management”, and Splunk. For me, this was a dream come true, because I had been moving towards the idea of focusing my energy towards activities that would contribute to being in a blue team type position professionally. Unfortunately, the homelab is not being actively supported, which means that the only people who will be able to help you, are those who devote the time to doing so. The lab itself also uses another virtualization platform by VMWare.
I tried building the lab and getting it running, but while my machines installed correctly, and certain machines could communicate with one another, network connectivity was not correctly implemented. I was confused and spent a good deal of time reading the VMWare documentation to figure out where I had gone wrong.
Now, it probably would have been possible to reach out to someone through the Cyberwox Discord and eventually find a solution, but the problem I faced with the Cyberwox homelab, was a problem I faced with homelabbing in Virtualbox in general: I wanted to add another dimension to my homelabs — A firewall.
While Cyberwox’s Cybersecurity lab was the first that I tried to build which made use of a firewall, I still wanted to incorporate firewalls in general into my labs, because I felt that having that added dimension would seriously enrich my experience in homelabbing.
While there are video tutorials for adding PFSense into Virtualbox to behave as a router/firewall, I was frustrated by the notion of spending several hours building a homelab only to run into a brick wall that I would be unable to find support for or find a way around.
Then I remembered a program called GNS3, which I became aware of when I was taking a class that was heavy on CCNA material. I learned that GNS3 wasn’t just a network simulator like Packet Tracer, GNS3 could serve as a front end for hosting Virtual Machines. While the virtualization is actually carried out in an external hypervisor like Virtualbox or VMWare Workstation, the networking and connectivity between machines is carried out using GNS3, and to me that makes a big difference.
I have a feeling that implementing a network in GNS3 will be a bit easier than it will be in Virtualbox alone. Virtualbox, for me, is great if you have a bunch of machines on the same switch, but if you want to throw something like a firewall or router in the mix, it’s something I feel would be easier to do in GNS3.
I get about an hour to devote to this project every week or so, and so far, I’ve been able to ping between two machines by just dragging and dropping connections between them and a virtual switch. Now, this is incredibly easy to do in Virtualbox as well. I’m hoping that in the next couple of weeks, when I can further devote time to this project, I’ll be able to post about the success of getting two machines to communicate — through a PFSense firewall.