I want to setup a testing lab in my basement for penetration/vulnerability testing & offensive/defensive security skills. I believe I have all the equipment that I need, and if I'll need something else, I will get it. I also have Cisco routers, firewalls, and managed switches. Money and resources are not an issue. How do I setup a lab if I have one host machine and three to four guest machines? Obviously, the host is the controller, but what OS and VM do I use? With the other machines, do I use one for Backtrack, one for Snort, one for Linux distro, one for Windows OS, e.t.c.? Any ideas on the structure of the setup?

  • 4
    You may take a look at my previous answer, those are basically vulnerable systems to train on. – HamZa May 14 '13 at 21:13
  • 1
    If you're just getting started, then expensive routers are probably a poor way to spend your money. They typically only play a minor role in security exploits anyway. – tylerl May 14 '13 at 21:40
  • @ HamZa DzCyberDeV thanks for your answer just what I was looking for. @ Tyler1 routers, switches were from a previous ccna lab from a couple years ago. I don't see it as wasted cause you need router, switches and firewalls to learn to hack into network anyway. plus all corporate networks have this equipment and they still get hacked! thanks – Procommtech8128 May 15 '13 at 2:49

So if I was you I would start relatively simply with some VMs and a host machine.

Personally I use VMWare workstation but other virtualization products are possibilities.

If you've got a decent enough machine (e.g. 8GB RAM, Quad-Core Sandy/Ivy bridge, fast disks), I'd recommend keeping the Host OS clear of lab tools or target Apps, as re-building VMs is an awful lot easier than physical kit. As to Host OS, I'd go with whatever you're most comfortable with as long as it runs your virtualization software of choice.

Then have a tools VM, and some targets. I'd start with Kali for the Tools VM and then have a selection of targets to attack.

A good place to start is the post that @hamza-dzcyberdev mentioned in his comment. Also you could look at pentesterlab who look to have some good free materials.

Once you've got the basics hanging you could start to introduce the physical systems (e.g. firewalls, routers) that you can't easily get Virtual versions of.

  • Thanks Rory. basically your saying is the host OS will also have the Virtual controller. Then a separate machine for tools and target apps, then separate machines for guests/target VMs. Great reply. Thanks a lot. – Procommtech8128 May 15 '13 at 2:59
  • Well the idea is that you can probably do it with one physical machine (although more are always useful). You can run (for example) windows + VMWare workstation and then create various VMs for tools and target vulnerable systems. the main restriction on how many you can have running is system memory. with 16GB of RAM I commonly have 3-4 VMs running at the same time without causing a slowdown. – Rory McCune May 15 '13 at 7:12

Have you thought about setting up honeypots on your network as well? They are pretty good at being able to configure ect. http://en.wikipedia.org/wiki/Honeypot_(computing)

I have also used a few programs for VMs.

Virtual box is one of the most common free ones (windows box). Proxmox is really common freeware that provides a lot of flexibility with virtualization via a linux hypervisor.

Sounds like you have the rest of the hardware. If you were looking to spend money on the OS Virtualization you may want to go the VMware route. Or even HyperV if you wanted to span across different virtual platforms.

  • Thanks Ibakerit. Honeypot is definitely something i'm going to look into. I have thought about virtual box, VMware workstation/server, etc. Although I stated resources weren't an issue, I actually meant to say hardware isn't an issue. Money is always tight. Thanks for the reply. good job. – Procommtech8128 May 15 '13 at 3:06

Not the answer you're looking for? Browse other questions tagged or ask your own question.