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
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
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
chmod on the
question/type/coderunner directory tree will probably break
runguard and you'll need to
re-run the runguard installer.