|
Remote unix Learning Environment (RULE)
Uses for RULE
-
Teaching basic introduction to Unix classes, basic commands, shell scripts
and configuration of basic system components.
-
Major shells such as tcsh, sh, bash and zsh work within a jailed
environment
-
Scripting languages such as PERL, Python and PHP work well in a jail
-
Teaching basic networking services such as HTTP, FTP and DNS.
-
Apache (the most popular web server in the world, with nearly 70% of the
market according to www.netcraft.com) was designed to run under Unix and
works well in a jail either on its own or with additional modules to
support popular Web optimized scripting languages such as PHP
-
BIND is one of the most popular name servers in the world, this is also a
native Unix application that runs well in a jailed environment
-
Teaching basic Unix programming and/or scripting
-
As each jailed host contains a minimal FreeBSD install, standard open
source development tools such as GCC and Make are included
-
Students can familiarize themselves with Unix programming without the
limitations of having standard user logins on a shared machine,
in particular this allows servers to bind to standard ports and as each
jail has its own IP address, servers can be easily identified by the IP
address on which they are running, rather than having to assign unique
non-standard ports for each student, all running on the same IP address.
-
Network simulation - Students can use `virtual networks' of jailed hosts to
perform a wide range of networking exercises and experiments without the
cost of physical machines, cables and switches
-
Secure Virtual Hosting (usually HTTP) - A jailed environment offers more
flexibility than the conventional chroot method of limiting damage from
intruders. As each jail has it's own IP address, it can be configured in
much the same way as a dedicated machine, but without the cost dedicated
hardware
-
Providing limited access to services on a multi-user machine - As jails
effectively break a single machine up into a number of sub-machines,
restricting access to services becomes much simpler as rules can be set
on a per `machine' basis
|