Cybersecurity: Virtual Machines
A virtual machine is basically a computer within a computer. A virtual machine (or VM) runs completely isolated on your computer, unless otherwise configured. Basically what this means is you get a miniature computer that can still access the internet, but gets deleted as soon as you're done with it. And I mean completely deleted. It saves literally nothing. No files, no cookies, no browsing history. If a VM gets infected by malware, that malware gets deleted as soon as the VM gets closed.
VMs are a handy way to securely isolate any number of activities. For example, you may use a VM to access your banking information, ensuring that such information is completely safe and isolated from anything else on your computer. Or you may use Whonix, which is basically just a pre-built Tor VM, to do random searches to protect yourself from tracking. VMs are virtually infinite in their uses.
The easiest way to create a VM is to use Oracle's VirtualBox Software, a free open source program that allows you to host a VM on Windows, Mac, or Linux. As I said before, I recommend using Debian, but there's a ton of options out there. A VM is actually a great way to test out various Linux distributions and see which one is right for you (if any). Here's how to set up a non-persistent Debian machine, meaning a Debian VM that doesn't keep files.
- Download and install VirtualBox (I recommend the extension pack, too, but technically I don't think it's necessary).d
- Download Debian (in most situations, the 64-bit iso is just fine), or the operating system of your choice.
- After starting VirtualBox, select "New"
- In the Name field, write "Debian" and the proper options under Type and Version should auto-populate. If you're using the operating system of your choice, you may have to manually select the type and version, but usually it finds it automatically. Don't worry about the machine folder and click Next.
- In the Memory size screen, I recommend a minimum of 8GB (8192 MB) if your computer can handle it (just make sure it stays in the green part of the slider). The more RAM you have, the smoother your experience.
- You can select the default options for the rest of the screens.
- Once the VM is set up, don't open it yet. Rather, open the Settings options.
- Under System > Proocessor, pick the maximum number of CPUs available while staying in the green. Again, this will create a faster and smoother experience.
- Next, go to Display > Screen and max out the video memory.
- Finally, go to Storage and under "Controller: IDE" click on the empty CD icon, the CD icon to the right, and navigate to where you downloaded the Debian iso. Press "OK"
- Now you're ready to boot up the VM by pressing the "Start" arrow. Just install like normal.
- After installing a VM of your choice, fire it up and run the update process.
- After updating, turn off the VM just like you would a normal computer by using the start menu.
- To the right of the VM, you'll see three horizontal lines. Clicking on them will bring up a dropdown menu with a "Snapshot" option. (See here)
- Click "Take" and save the VM with any name you want. I like to use the current date so I can easily tell if it's been a while since I updated my VM and therefore should check for updates.
The trick to never saving anything on your VM is to click the X in the corner rather than to shutdown like a normal computer. It will present a pop-up box asking you if you want to shutdown or revert to a previously saved state. Select your snapshot as a previous state and close it. Using your VM in this manner will ensure that you can safely conduct your business online without fear of malware or persistent tracking. Keep in mind that you are still giving up any voluntary information - for example, if you sign up with an email using your real name, obviously that's your email. You are also still subject to tracking within a single session. So if you check your bank, then Reddit, then go shopping on Amazon all in the sames session, those steps will all be tracked and connected. I recommend using your VM for one single purpose, then restarting it for a new purpose.
There is one particular VM I want to give a special section to. You probably noticed in my screenshots that I already had two VMs saved called Whonix. Whonix is a VM that routes all your traffic through the Tor Network for almost perfect anonymity. When I boot my computer, I immediately open a Whonix machine and let it run, that way I have a constant connection to the Tor network. By opening Tor only when I need it, I run the risk of opening myself to time-correlating attacks - basically an enemy can see that I only used Tor during these specific times and that narrows down what traffic might be mine. Once I have Whonix running, I leave it running in the background and use it for random searches. If I want to check out the local pizza place's menu, I use Whonix. If I'm curious what a specific actor is up to these days, I use Whonix. This nonstop usage for random searches allows me to keep my privacy. And since I shutdown my computer when I'm not using it, there's no persistent tracking across multiple sessions. Sure, a few of my searches probably get correlated, but none enough to definitely identify me.