This is an old revision of the document!
Table of Contents
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 additional VirtualBox assistance, refer to the online documentation.
- 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
Name | Description | Username/Password |
---|---|---|
3482-w24-win10 | 3482 Winter 24 Windows 10 VM | na |
4421 | 4421 VM | na |
kali-linux-2024.4-virtualbox-amd64 | Kali Linux | u: kali, p: kali |
metasploitable2 | Metasploitable 2 | u: mfsadmin, p: mfsadmin |
metasploitable3 | Metasploitable 3 | u: vagrant, p: vagrant |
SEED-Ubuntu20.04 | SEED | u: seed, p: dees |
ubuntu-24.04.2-server | Generic Ubuntu 24.04.2 Server VM | u: common, p: common |
flarevm | Windows 10 FlareVM with all packages | na |
VM Bundles
Name | Description |
---|---|
security1 | Installs Kali, metasploitable2, metasploitable3, SEED, all at once on a shared private network. |