CodeRunner Documentation (V2.4.2)

2.3 Building the RunGuardSandbox

Note: the RunGuardSandbox is no longer being maintained and will probably be removed in the near future.

The RunguardSandbox allows student jobs to be run on the Moodle server itself. It users a program runguard, written by Jaap Eldering as part of the programming contest server DOMJudge. This program needs to be 'setuid root', and hence the install script requires root permissions to set this up.

If you wish to use the RunguardSandbox you must have used either the second or third of the installation methods given above. Do not proceed until you have read the various security warnings in the section The Runguard Sandbox below. Then, if you still wish to install RunGuard, type the command

sudo ./install_runguard

from within the outermost CodeRunner directory. This will compile and build the runguard program and add the user account coderunner, which is used for running the submitted jobs. The install script may prompt for details like the office and phone number of the coderunner user - just hit enter to accept the defaults.

All going well, you should finish up with a user 'coderunner' and a program runguard in CodeRunner/coderunner/Sandbox/ with setuid-root capabilities. runguard should be owned by root with the webserver user as its group. This program should not be accessible to users other than root and the web server. Note that any subsequent recursive chown or chmod on the question/type/coderunner directory tree will probably break runguard and you'll need to re-run the runguard installer.