• CSNP

Build Your Own Home Cyber Range: Part 1

This article originally appeared on Code Fellows with the title "Build Your Own Home Cyber Range: Part 1"

computer processing chip

Author David Lee


Ever wondered how cybersecurity pros simulate threats in a safe manner? Join me in this first entry in my series all about how I built my own affordable home cyber range, and how you can too!

Why a Lab Computer?

Cybersecurity professionals make use of a wide range of tools that run primarily on a Windows or Linux operating system (OS). Security techniques often involve tracking the communication between multiple machines on a network. Rather than building out dozens of special-purpose physical computers on a local-area network or cloud, this environment can be simulated with virtual machines (“VMs”). VM platforms are capable of hosting a “computer within a computer,” allowing for a “host” computer to run multiple isolated operating system environments, all within the operating system of the host. So, a single dedicated lab computer at home allows you to spin up virtual machines in a contained, secure sandbox without dealing with those pesky cloud charges or having to consume precious resources on your personal desktop system. Most security professionals have home lab environments used for learning and simulating scenarios. In fact, many cybersecurity interviews include the question: “What is your home lab like?” In this series, I’ll show you what a complete answer looks like.

Hardware

For my home cyber range, I wanted a computer that, while affordable, still offers specifications that facilitate virtualization. Having used server blades in the past, I ruled those out early on due to their noisy fans and steep power consumption. In the IT home lab community, the Dell Precision T3600 is highly regarded as a unique value point due to its support for an 8-core CPU (a CPU with an astonishing $30 price tag on eBay). I sourced mine from a local computer shop, but alas it only came with a quad-core CPU with the following specs:



  • CPU: Intel Xeon E5-1603 Quad Core 2.8GHz Processor

  • GPU: 2x AMD/ATI Turks GL FirePro V4900

  • RAM: 32GB

  • Hard drive: 128GB SSD, 1TB HDD

Your first virtualization server computer does not necessarily need to be a T3600 model. This article calls out a few specific models that are good value points for these desirable hardware specifications, but you can use any model computer so long as you keep in mind the critical performance aspects. A virtualization computer should have a high CPU core count prioritized over raw CPU speed. At a minimum, you’ll want 4 cores, on a CPU that supports VT-x instructions, like an Intel Core i5-2300 series or higher. RAM (16GB at the minimum) and hard drive space (at least a few hundred GB) are critical to hosting multiple VMs. Using an SSD for a hard drive provides a very helpful performance gain. I picked up some extra RAM at the shop for my machine, and I’m planning on upgrading the CPU to an 8-core in the near future.


Another model you might consider is the HP ProDesk or EliteDesk series of towers, that offer a friendly price point for a readily-available machine, with decent virtualization capabilities. If you’re interested in the louder rackmount server blades, check out the Dell Poweredge R720 or R710. These offer a similar price and value point and generally boast a higher CPU core count than the T3600. Downsides of running a server blade at home include higher power consumption, additional hardware complexity, and loud fan noise. For the sake of having a beginner-friendly lab, I don’t think a person’s first VirtualBox host should be an enterprise server blade unless the learner has worked in IT in the past.


Operating System


Next, I needed a lightweight, resource-efficient operating system (OS), so I went with Ubuntu. Ubuntu is a free, open-source OS based on the Linux architecture. After downloading Ubuntu 20.10 LTS to my Windows 10 PC, I needed a way to boot into external media to install Ubuntu on the lab computer, so I created a bootable USB flash drive using UNetbootin on my Windows PC. These steps