I will be using Ubuntu Linux for this project.
For training of a particular application at a conference I need:
- To have each student be able to ssh into the same user account on a server
- Upon each login automatically put the user in separate isolated environments
- Each isolated environment includes the application, example config files, and the standard unix toolset (e.g. grep, awk, sort, uniq, etc.) However, access to an entire linux filesystem is fine too as long as the user can only damage his own isolated environment and not those of others.
- The virtual environments should be destroyed when the users SSH session ends
For #1 we would like to do the single user account so we don't have to deal with creating an account for each student and handing out the user names and passwords.
Does anyone know how I can meet these goals? Which technology e.g. LXC, Chroot, etc. is best for this? I've been toying with the idea of using .bash_profile and .bash_logout to handle the creation and destruction of these environments but not sure which technology is capable of creating the environments I need.