Ultimately Safe User Account

Bart Silverstrim bsilver at chrononomicon.com
Fri Sep 24 04:53:31 PDT 2004


> I have a production FreeBSD box. My friend is starting to learn Unix
> essentials and is asking me for an account. He doesn't require any
> special rights, but he certainly wants to be able to use shell and
read
> most manual pages. He'll access the server via Internet, SSH.
>
> How can I create an account, so that it is completely safe to let him
> in? How can I jail/chroot him and do I need to do it this way? I want
to
> limit everything: disk space (~500Mb), RAM (~10%), processes (~30),
cpu
> (~5-10%), _internet connectivity_ (bandwidth is expensive and he must
> not be able to download much). He is new to Unix but I have to suppose
> that somebody very experienced can steal his account info.
>
> I'd be glad if he had only very basic ls, cp, mv, as well as sh and
vi.
> I don't want him to have any browser or fetch-like utility.
>
> I know that letting somebody log in is already a security hole, but I
> want to minimize the risks.
>

As others had pointed out, a live boot CD is the best way to learn on 
his own hardware without you getting nasty surprises on your own.

Alternatively, he (or you) could invest in VMWare and let him have free 
reign inside a virtual machine.  Personally those would be the two 
options I'd look at first...preferably VMWare, since a screwup is as 
easy to recover from as copying a backup of the good image to a working 
drive image.

Otherwise you're looking at investing a lot of time and effort in 
getting quotas configured, bandwidth monitoring, jails, etc. etc...the 
virtual machine route is the best way to give a budding "root" a chance 
to learn with less fear of mistakes (or killing your 
server/workstation)...especially if he gets clever with ssh redirection 
of ports :-)

-Bart



More information about the freebsd-questions mailing list