User Tools

Site Tools


services:eecsvm

This is an old revision of the document!


EECSVM Service

The EECSVM service allow students to use virtual machines required by courses they are taking. The service is only available to students enrolled in those courses.

IMPORTANT NOTE: During EECSVM test phase, please login to ea75-ea78 in remotelab for testing EECSVM service. It is not yet available on all lab workstations.

Users will use VirtualBox to access virtual machines from either a lab machine (in Lassonde Building), or, remotely using a limited set of machines available in remotelab which are dedicated to EECSVM access.

The current machine configurations in Lassonde Building labs include:

Lab Processor Cores Memory
LAS1002 Core i7-8700T 6 cores 16 GB memory
LAS1002b Core i7-8700T 6 cores 16 GB memory
LAS1004 Core i7-13700 8 performance cores, 8 efficient cores 32 GB memory
LAS1006 (*) Core i7-12700 8 performance cores, 4 efficient cores 32 GB memory

The advantage of relying on lab machines for CPU and memory is that as we upgrade lab machines, the EECSVM service will also be upgraded. In addition, if a course is holding a lab across multiple rooms, and there are many students who need to work on VMs simultaneously, then each student will have their own dedicated CPU cores and memory.

NOTE: Due to Microsoft restrictions, Windows VMs can only be used by students who are sitting at a lab seat, on campus, and not remotely.

(*) While the lab machines in LAS1006 are all available in remotelab, labtests could cause disruption to remote service. The EECSVM service can be used on lab machines locally during course labs or when the lab is not in use. It can can be used via remotelab in the late evening and weekend hours when no labtests are scheduled.

Check If You Have Access

To determine whether your account has access to the EECSVM service:

% eecsvm access
You have access to EECSVM service.

List Available Virtual Machines

To list available virtual machines that you can install:

% eecsvm list available

Available VMs To Install:

3482-w24-win10
4421
flarevm
kali-linux-2024.4-virtualbox-amd64
metasploitable2
metasploitable3
SEED-Ubuntu20.04
ubuntu-24.04.2-server

Available VM Bundles To Install:

security1

Single VMs can be available (such as Ubuntu), or a VM bundle can be available (eg. “security1”). A VM bundle is just a way to install several VMs at once.

Install A Virtual Machine

After listing the available virtual machines, install a virtual machine like this:

% eecsvm install ubuntu-24.04.2-server
Installing ubuntu-24.04.2-server ...
Virtual machine 'ubuntu-24.04.2-server' is created and registered.
UUID: f93a7c04-cc83-4956-936b-b9794f3a1b93
Settings file: '/eecs/vm/user/jas/ubuntu-24.04.2-server/ubuntu-24.04.2-server.vbox'
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Medium created. UUID: 1040c942-aea6-4b48-bca4-07547f4a222e

Ubuntu server is installed immediately.

Installing a Virtual Machine Multiple Times

If you need to install multiple copies of the same VM (say, 3 copies of Ubuntu), then you can give each install its own name:

% eecsvm install ubuntu-24.04.2-server ubuntu1
Installing ubuntu1 ...
Virtual machine 'ubuntu1' is created and registered.
UUID: 53a44de9-3a68-488b-ad27-e73a365061bf
Settings file: '/eecs/vm/user/jas/ubuntu1/ubuntu1.vbox'
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Medium created. UUID: 05972878-a145-4b8d-bbc5-9ffa1c0492b6

% eecsvm install ubuntu-24.04.2-server ubuntu2
Installing ubuntu2 ...
Virtual machine 'ubuntu2' is created and registered.
UUID: 7257af04-747d-4040-bbc2-d4c51e808300
Settings file: '/eecs/vm/user/jas/ubuntu2/ubuntu2.vbox'
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Medium created. UUID: 66180e9a-f0c0-4dc3-bbc5-c17a1337e0cc

% eecsvm install ubuntu-24.04.2-server ubuntu3
Installing ubuntu3 ...
Virtual machine 'ubuntu3' is created and registered.
UUID: 9d27ce5e-d2a9-4db0-b15e-720aaa896e45
Settings file: '/eecs/vm/user/jas/ubuntu3/ubuntu3.vbox'
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Medium created. UUID: 5b277adf-a72d-4bcd-92d9-1ba4249291a5

Optional Installation Options

Other options which you can use when installing a vm with “eecsvm install” include:

  • -f = force the install to overwrite a previous install
  • –immutable = changes that you make to the VM will not be saved on exit
  • –netname “<network-name>” - All VMs with the same network name will share the same network, and can communicate.

For example, to overwrite a previous Ubuntu install, and to create an immutable VM which uses the network name “mynet”:

% eecsvm install -f --immutable --netname mynet ubuntu-24.04.2-server ubuntu1
Installing ubuntu1 ...
Virtual machine 'ubuntu1' is created and registered.
UUID: 69b51513-ef2e-4b40-99ec-24f88abe20e3
Settings file: '/eecs/vm/user/cs911089/ubuntu1/ubuntu1.vbox'
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Medium created. UUID: 16e12d00-4933-43c9-8eb0-53e1bb4106ad

Installing a Virtual Machine Bundle

To install a virtual machine bundle, pass the bundle name to the “eecsvm installbundle” command:

% eecsvm installbundle security1

Installing bundle security1  ...

Installing kali ...
Virtual machine 'kali' is created and registered.
UUID: 282a38e4-3c50-44dc-8790-f9ee1f1fffbb
Settings file: '/eecs/vm/user/jas/kali/kali.vbox'
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Medium created. UUID: e11d9fa2-b85e-4d8a-81ce-c490b31f1020

Installing metasploitable2 ...
Virtual machine 'metasploitable2' is created and registered.
UUID: b0006681-f4be-4dd8-852e-c4f5f71a365e
Settings file: '/eecs/vm/user/jas/metasploitable2/metasploitable2.vbox'
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Medium created. UUID: 53df409e-a87b-4cbe-ae31-f93ea3374208

Installing metasploitable3 ...
Virtual machine 'metasploitable3' is created and registered.
UUID: 22565bc6-42e8-43ff-a034-0f058f578022
Settings file: '/eecs/vm/user/jas/metasploitable3/metasploitable3.vbox'
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Medium created. UUID: 265021f3-6245-42fa-bd9d-f12f75e1e289

Installing seed ...
Virtual machine 'seed' is created and registered.
UUID: 44e26de0-71a5-4e12-a653-9c83e0afe7a6
Settings file: '/eecs/vm/user/jas/seed/seed.vbox'
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Medium created. UUID: 3f81cfc4-2159-4010-bebe-f0190fdbd901

Check Which Virtual Machines You Have Installed

To check which virtual machines that you you have installed:

% eecsvm list installed

User installed VMs:

kali
metasploitable2
metasploitable3
seed

Delete a Virtual Machine

To delete a virtual machine:

% eecsvm delete ubuntu1
Deleting VM ubuntu1 ...

Starting a Virtual Machine

To start a virtual machine, start the VirtualBox GUI using the “virtualbox” command, then click on the VM on the left side of the display (underneath the VM name it will say: “Powered Off”), then click “Start” on the right side of the display:

% virtualbox

You can also start the VM from the command line:

% vboxmanage startvm kali
Waiting for VM "kali" to power on...
VM "kali" has been successfully started.

WARNING: On some older O/S, the VirtualBox guest additions do not work. In these cases, when you click on the VM window, your mouse will be locked to that window, and you will not be able to exit it unless you hit the right CTRL key on your keyboard.

Stopping A Virtual Machine

You can stop a running virtual machine from the VirtualBox GUI. Right-click on the VM in the left side of the display, and choose “Stop” then your shutdown option. The VM will be shut down.

You can also shut down your VM from the command line:

vboxmange controlvm kali shutdown

Check Your Virtual Machine Storage Quota

To see how much space you have available in your EECSVM quota:

% eecsvm quota
Quota:  0.0 of 39062.5 MB used

By default, you have a 40 GB storage quota. When you install VMs, the original VM disk does not count toward your quota. Only changes that you make to the VM count toward your quota.

Reset Your EECSVM Environment

If you would like to clear your EECSVM storage, and VirtualBox settings, use the “eecsvm reset” command:

% eecsvm reset

*** WARNING ***

This operation will delete ALL of your virtual machines, and 
VirtualBox configuration.  This operation is NOT recoverable.

Do you wish to proceed (YES/no) ?YES

Access Your EECS Home Directory From Inside Your VM

Your EECS home directory is shared with certain VMs. The method of accessing it will be different depending on the O/S:

Linux

With Linux, your EECS home directory will be available as: /media/sf_homes

NOTE: If you are setting up a new virtual machine, or adding additional users, you need to ensure that the user who is accessing the VM is in the vboxsf group to be able to access this folder:

% sudo usermod -aG vboxsf $(whoami)

Windows

If the share is available to a Windows VM, it can be mounted as \\vboxsrv\homes

Creating Your Own Virtual Machine

Faculty can create VMs and make them available to their students in consultation with tech.

First, start by installing an existing VM image just like before:

% eecsvm install ubuntu-24.04.2-server my-custom-ubuntu

Next, modify the VM to include the required components. For example, you could change the configuration of the VM, or install certain software.

When you're done testing, shut down the machine, and let tech know. We will create a disk image which consists of the original VM plus your changes, and make it available to all EECSVM users by cloning your VM disk into the EECSVM repository as follows:

% eecsvm clone /eecs/vm/user/bob/my-custom-ubuntu/my-custom-ubuntu.vdi /eecs/vm/image/my-custom-ubuntu.vdi

NOTE: Once users have started to use your new image, it cannot be changed.

WARNING: While you can install a VM from an ISO image, if you do this, you are bound to use your quota entirely.

Clear VirtualBox Configuration

To clear your VirtualBox Configuration:

Other Important Information About EECSVM Service

  • Data is the EECSVM area is not backed up. If you corrupt your disk image, you will have to start again.
  • VirtualBox will not monitor if you are running your VM simultaneously on multiple machines. This will, however, cause data loss! Always ensure that you exit VirtualBox, and shutdown your virtual machines when you're done.
  • If you're using a lab machine, check the pcmode schedule to ensure that the machine that you are using will not be rebooted into labtest while you are working.
  • All supported VMs must run on the current VirtualBox version. If the VM reports that it cannot be used with the latest VirtualBox, we won't be able to use it.
  • The EECSVM service is intended for education students. It is not intended for research whatsoever.
  • At the end of each term, ALL student storage on the EECSVM service will be cleared.
  • Each user can choose which VMs they install in their storage space. Users who install VMs from ISOs will likely find that they fill their storage space. Additional quota for students is not available.
  • For more information on VirtualBox command line options, use command “vboxmanage”.

Here's information on the currently installed VMs for use with the EECSVM service:

Currently Installed VMs

VM Images

NameDescriptionUsername/Password
3482-w24-win103482 Winter 24 Windows 10 VMna
44214421 VMna
kali-linux-2024.4-virtualbox-amd64Kali Linuxu: kali, p: kali
metasploitable2Metasploitable 2u: mfsadmin, p: mfsadmin
metasploitable3Metasploitable 3u: vagrant, p: vagrant
SEED-Ubuntu20.04SEEDu: seed, p: dees
ubuntu-24.04.2-serverGeneric Ubuntu 24.04.2 Server VMu: common, p: common
flarevmWindows 10 FlareVM with all packagesna

VM Bundles

NameDescription
security1Installs Kali, metasploitable2, metasploitable3, SEED, all at once on a shared private network.
services/eecsvm.1740516097.txt.gz · Last modified: by jas