VirtualBox biedt verschillende mogelijkheden op het gebied van veiligheid. De meest bekende is het kunnen uitproberen van andere (Linux en andere) besturingssystemen zonder dat dit de installatie van je huidige besturingssysteem verandert. In deze workshop gaan we aan de slag met een aantal andere mogelijkheden van VirtualBox op het gebied van veiligheid.
André Fondse
VirtualBox emuleert de hardware van een computer. Hierdoor kun je een besturingssysteem onder VirtualBox installeren zonder dat je zorgen hoeft te maken over de veiligheid van dit besturingssysteem op jouw lokale computer. Dit maakt VirtualBox uitermate geschikt voor experimenteren. De virtuele computer waarop een besturingssysteem draait noem je een Virtual Machine (verder VM). Server versies van Linux vereisen over het algemeen niet al te veel hardware en daardoor is het mogelijk om verschillende Linux servers naast elkaar onder VirtualBox te draaien. Het aantal machines dat je naast elkaar kunt draaien is afhankelijk van het ingestelde geheugen en het geheugen dat je beschikbaar hebt op je fysieke computer. Daarnaast is het ook mogelijk om grafische desktopsystemen onder VirtualBox te draaien. Hiervoor is wel meer geheugen nodig dan voor een systeem dat zonder grafische interface draait. In onderstaande afbeelding is de gebruikersinterface van VirtualBox 5.2.42 weergegeven.
Installatie VirtualBox
Onder Linux Mint installeer je VirtualBox eenvoudig via programmabeheer. Aanvullend kun je via programmabeheer het VirtualBox Extension Pack installeren. Dit biedt onder andere USB 2 en 3 ondersteuning en het opstarten via het netwerk. Het hoofdprogramma is Open Source. Het VirtualBox Extension Pack is geen Open Source, maar is wel gratis te gebruiken voor privé doeleinden. Is VirtualBox niet in de pakket manager van jouw Linux distributie opgenomen, dan kun je via de website van VirtualBox een versie downloaden. Dit geldt ook als je op je werkstation MS Windows of Mac OS draait.
Snapshots
Snapshots zijn een krachtig middel om een situatie van een VM te bevriezen en uiteindelijk terug te gaan naar het moment van bevriezing. Een snapshot kun je maken van een draaiende VM. Kies vanuit je VM de menubalk en hierin het menu item machine. Als je de VM vanuit een venster draait, dan zit de menubalk bovenaan de VM (zie onderstaande afbeelding). Draai je de VM in een volledig scherm dan is VirtualBox standaard zo geconfigureerd dat de menubalk van VirtualBox aan de onderkant van het scherm verborgen is. Als je met de muis in het midden van de onderkant van het VM scherm komt, dan komt de menubalk naar voren. Zodra je op ‘Maak snapshop’ hebt geklikt, krijg je een venster waarin je de snapsnot een naam en eventueel een aanvullende beschrijving kunt geven. Het snapsnot maak je vervolgens aan door op de ‘OK’ knop te klikken.
Om te terug te gaan naar de situatie van een Snapshot sluit je eerst de VM op een normale wijze af. In het hoofdscherm van VirtualBox (zie de eerste afbeelding) klik je van op het pijltje naar beneden rechts naast ‘Machinegereedschappen’ (bovenaan scherm) en klik vervolgens op ‘Snapshots’. Je ziet in dit scherm dan een overzicht van de genomen snapshots (zie hieronder). Selecteer nu het snapshot dat je terug wilt zetten en klik daarna op de knop ‘Terugzetten’ bovenaan in het scherm. Voordat je dit snapshot terugzet, krijg je dan nog de mogelijkheid om een snapshot aan te maken van de huidige staat. Met snapshots kun je zonder al te veel ruimtegebruik allerlei varianten in configuratie uitproberen zonder dat ze op elkaar van invloed zijn.
VM’s klonen
Een andere mogelijkheid is het klonen van een VM. Er wordt een kopie van de geselecteerde VM aangemaakt die alleen een andere naam heeft gekregen. Je kloont een VM door eerst in het hoofdscherm van VirtualBox een VM te selecteren. Daarna klik je met de rechter muisknop op deze VM je kiest vervolgens voor Klonen. Voordat je de kloon aanmaakt is het mogelijk om een andere naam te kiezen dan de voorgestelde naam en het herinitialiseren van de MAC adressen van de netwerkkaarten uit te schakelen. Nadat je op de ‘Volgende’ knop geklikt hebt, krijg je de keuze of je een volle of een gekoppelde kloon wilt maken. Een volle kloon is een exacte kopie van de geselecteerde VM onder een andere naam. Een gekoppelde kloon maakt gebruik van de snapshot techniek, maar zorgt er wel voor dat deze snapshot vanuit het hoofdscherm van VirtualBox beschikbaar is als een ‘normale’ VM.
Back-up en terugzetten van VM’s
In VirtualBox kun je eenvoudig back-ups van je VM’s maken. Dit gaat via Bestand en vervolgens Appliance exporteren. Over het algemeen voldoen de standaard instellingen die VirtualBox voorstelt. Mogelijk aandachtspunt is de directory waarin VirtualBox de back-up wil opslaan. Dit is namelijk je documenten directory. De directory en de bestandsnaam zijn eenvoudig in dit scherm aan te passen. Het maken van de backup start je door op de knop ‘Exporteren’ te klikken.
Via Bestand -> Appliance importeren kun je een back-up van een VM terugzetten. De VM die je importeert kan ook op een andere computer gemaakt zijn dan waarop VirtualBox draait. Ook is het mogelijk om van een bestaande VM een back-up te importeren naast deze bestaande VM. Zo kun je veilig nieuwe software/instellingen testen zonder dat je van de bestaande VM de configuratie wijzigt. Dit laatste is ook met snapshots of klonen te realiseren. Het is maar waar je de voorkeur voor hebt en wat je exacte behoefte is om een en ander uit te testen.
Netwerk
VirtualBox heeft de mogelijkheid om op een VM vier netwerkkaarten in te stellen. Daarnaast biedt VirtualBox verschillende mogelijkheden om het netwerk voor een VM in te stellen (zie onderstaande afbeelding). De meest eenvoudige netwerk instellingen in VirtualBox zijn NAT en Netwerk Bridge adapter. In de meeste gevallen kun je een van deze instellingen gebruiken. Aanvullende informatie over netwerk configuratie kun je vinden via deze link.
NAT
Als je vanuit VirtualBox via de knop nieuw (links bovenaan interface) een nieuwe VM aanmaakt, dan wordt het netwerk standaard met NAT geconfigureerd (zie gegevens netwerk in afbeelding 1). Met deze instelling heeft de VM verbinding met internet en je kunt het ook zo instellen dat de virtuele machine op internet bereikbaar is. Een netwerkverbinding door middel van NAT is de meest veilige, maar (tenzij je port forwarding voor de VM instelt) is het niet mogelijk om de VM als een virtuele computer in je interne netwerk te gebruiken.
Netwerk bridge adapter
Als je kiest voor Netwerk bridge adapter, dan is je VM onderdeel van je eigen interne netwerk. Dit betekent dat je via de VM de apparaten op je interne netwerk kunt benaderen en andersom. Standaard is de netwerkkaart van je VM verbonden met de netwerkkaart met het laagste volgnummer van je computer (zie de onderstaande afbeelding). Ten opzichte van NAT is de Netwerk bridge adapter net wat minder veilig, maar dat risico kun je ondervangen door op de computers op je interne netwerk een firewall te activeren. (Zie hiervoor ook mijn andere workshop in dit blad.) Tegelijkertijd kun je met behulp van gezond verstand ook wel bepalen of een NAT of een firewall nodig is. Als je bijvoorbeeld een andere Linux distributie wilt uitproberen en je installeert die via de officiële bronnen van deze distributie, dan loop je met een netwerkaansluiting van je VM via een Netwerk bridge adapter een beperkt veiligheidsrisico.
NAT-netwerk
Met een NAT-netwerk werkt ongeveer hetzelfde als je computers aansluit op je interne netwerk. Het enige verschil is dat je dan VirtualBox als router moet zien en dat alle VM’s dan op hetzelfde netwerk zitten. De computer waarop VirtualBox draait maakt niet uit van dit interne netwerk. Eerst maak je in de VirtualBox interface een nat netwerk aan via Bestand -> Voorkeuren. Selecteer vervolgens aan de linkerkant ‘Netwerk’ en voeg met een plusje aan de rechterkant het (nat) netwerk toe. Als je in de instellingen van je VM voor NAT-netwerk kiest is de naam van het net aangemaakte NAT-netwerk al ingevuld. In bovenstaande link staan voorbeelden hoe een NAT-netwerk te configureren.
Intern netwerk
Onder intern netwerk verstaat VirtualBox dat alle VM’s onderling met elkaar kunnen communiceren via het netwerk. Het is niet mogelijk bij gebruik van de optie Intern netwerk via het netwerk te communiceren met je fysieke interne netwerk en de computer waarop je VirtualBox hebt draaien. Ook heb je geen verbinding met internet. Maak je gebruik van intern netwerk, dan moet je of de VM’s zelf een handmatig IP-adres geven of je maakt gebruik van de DHCP server van VirtualBox. De toelichting voor het gebruik van VirtualBox DHCP server vind je op deze site.
Host-only adapter
Een host-only adapter maakt gebruik van een apart geconfigureerd netwerk waarop de VM’s en de computer waarop je VirtualBox draait met elkaar kunnen communiceren. Voordat je gebruik kunt maken van een Host-only netwerk, moet je een netwerk aanmaken via het hoofdscherm van VirtualBox door middel van Bestand -> Host Network Manager. Een nieuw netwerk voeg je eenvoudig toe door linksboven op de knop ‘Aanmaken’ te klikken. Normaal gesproken wordt meteen de DHCP server op dit netwerk aangezet waardoor de aangesloten computers automatisch een netwerk verbinding krijgen. Dit zie je als je bovenin op eigenschappen klikt (zie hieronder). Als je vervolgens bij de netwerkinstellingen van je VM voor Host-only adapter kiest, dan is het net aangemaakte netwerk meteen geselecteerd. Als je nu je VM opstart, dan zit deze VM in het interne netwerk met de computer waarop je VirtualBox draait en andere VM’s met deze netwerk instelling.
Tot slot
Deze workshop heeft met name betrekking op de mogelijkheden om op een veilige manier nieuwe besturingssystemen, software en/of configuraties uit te proberen. Met VirtualBox is veel meer mogelijk dan in deze workshop aan de orde gekomen is. Denk bijvoorbeeld aan het toekennen van een USB aan de VM, het opslaan van de beelden van de VM, het benaderen van de VM via het netwerk, het delen van mappen tussen de VM en de computer waarop VirtualBox draait etc. Neem de tijd en ontdek VirtualBox.