Setting Up A Local Lab


Depending how you're reading this, the machine you're using might be enough!
What hardware you currently have (or how big your budget is), will affect the style/type and performance of the lab. However, don't worry, you're able to do a lot with only a little!

Current hardware

If you only have one machine, and for whatever reason can't 'dual boot' it, not a problem. You'll be able to install some virtualizing software, allowing you to create 'virtual machines' (A computer running inside your computer).
If you have a second machine, or don't mind experimenting, you might wish to 'dual boot'. This gives you the option to choose when you start up your computer, you select which operating system to use.
However if you have a machine which isn't been used (been sitting under the stairs), you can now put it to use by 'cutting out the host OS' and booting straight into the hypervisor, or, it could just be a target to break into.


Even if you have a small budget, you can improve the performance of the lab. Three key areas to look into upgrading:
  • RAM - Something which you can't have too much of when it comes to virtualizing! The more the merrier.
  • HDD - Having multiple machines, reading/writing to the same hard drive will slow it down. Either purchase another hard drive allowing different machines on different drives and/or purchase a faster drive (e.g. solid state).
  • CPU - Having a CPU with extra cores is better than faster clock speed when virtualizing.
As you allocate resources to your virtual machines, your host machine isn't able to use them, slowing down the machine. If you don't give enough resources to your virtual machines, just like a physical machine, they can't perform smoothly.
As today's technology is only getting faster and at a quicker rate, the prices for components are always coming down in price. Keep an eye on sales, you'll be able to pick up a good deal within 6 weeks!

If you can't upgrade your machine for whatever reason (much harder to upgrade a laptop than a desktop), you can still try and improve what you have. There are various tips and tricks out there to speed up your machine. Generally try to close & remove unnecessarily running services/processes, to free up resources (allowing you allocate more into virtual machines!).

Dedicated machine

If you're going to build a dedicated machine or convert an old machine for running your virtual machines, it might be worth using hypervisor (E.g. VMware ESXi, Xen & KVM). If this is the case, all three areas which are mentioned in 'upgraded' (CPU, RAM, Hard Drive) need to have highest priority.
Something to think about, if you choose to get into 'password cracking' using GPUs instead of CPUs increases the cracking speed by hundreds, if not thousands! However, by doing so, the specifications of this machine would need to be different as power cooling and space becomes more of an issue.


Really it depends on how many machines you wish to run at once (and what's going to happen inside them).
Let's say as a rule of thumb:
  • For the host OS: 1GB RAM & 1 core, background programs (depends on what you have open) 512mb - 1gb & 1 core
  • Ideally for each VM: 2GB RAM & 1 core.
    At a minimum: 1GB RAM & 1 core (depending on the guest OS this might not be an option or will perform very poorly).
With that in mind, on a laptop, which has 4GB of RAM at a push you could run two virtual machines on it. This would let both the attacker & a target be inside a virtual machine, running at the same time, however, you could dual boot into the attacker, and then have two targets in virtual lab.

Additional hardware

Depending on what you wish to learn & try out, you may want to purchase additional hardware. This could range from a second/third hand old device to state of the art/breaking technology.
If you're reading this, chances are you're just starting out, a few ideas of 'items' to keep a look out for are:
  • Routers/Switches
  • Old/unwanted computers
  • Wireless access points/Wireless network cards
These items will help you to build up your network lab, both wired and wireless - giving you more options.
You can also then segment your network to help secure it.