Personal tools



Jump to: navigation, search
Description Examcontrol
Date 2021/06/25
Version 1
Type Scripts to collect student work and control computers during exams


João Manuel Rodrigues <> June 2021

Examcontrol is a simple tool developed several years ago (circa 2005 or earlier) at DETI/UA with the purpose of reliably collecting student exam files from computers running Linux in computer labs at the University of Aveiro. The tool automates the creation of a temporary safe account with a set of provided files on the home directory of each computer. It sets up a local configurable firewall at the computer during the exam, and restricts permissions on the student account to prevent access to external devices, too. It constantly monitors simple parameters on the target computers, namely the state of the firewall, who is logged in and which files are being modified. During the exam, student files are kept on the target computers and can be synchronized on demand to the server. This minimizes network traffic during the exam and allows students to carry on undisturbed even if the network fails temporarily.

To accomplish this, examcontrol uses NFS, rsync and SSH to transfer files and to broadcast simple commands to an agent program that runs on the target computers. Commands are broadcast in parallel to the target computers and their outputs are collected asynchronously using `pssh`, a program developped in C by Tomás Oliveira e Silva, also at DETI/UA. This requires the examcontrol tool to own a private SSH key that gives it access to a priviledged acount that must be preconfigured on the target computers with the corresponding public SSH key.

Teachers/proctors run examcontrol on a safe server that opens SSH connections to a set of target computers. Each exam is configured as a directory on the server where the teacher puts the "skeleton" to be provided as the students home dir and a couple of configuration files to set up the firewall whitelist and a few minor configuration options. Several instances of examcontrol may be run at once, each controling a set of target computers typically on a single classroom. The monitored state of the target computers is constantly summarised on a simple text display for the proctor to check.

Examcontrol was never published publicly, but has been used locally at the University of Aveiro to control exams of several courses each semester. Hundreds of exams and thousands of students have relied on it since its creation.

The examcontrol tool described here was partly inspired by, but should not be confused with the ExamControl program developed by Prof. José Neto Vieira (also DETI/UA) at around the same time with a similar purpose for use on Windows computers. Vieira's ExamControl has a much cleaner and simpler graphical interface, but provides more limited functionality, namely file collection from the target computers. The creation of the temporary exam account and optional firewall rules must be set up by the university's IT staff using other tools.