I'm writing a simple program to back-up some files to a Linux box. The transaction will take place over SSH and each copy of the program will have its own account on the Linux box that it will connect to.
My concern is that it's likely a user of the software will figure out their account name and password (which will be randomly generated beforehand) and want to connect to the box and play around.
I would like to disable their ability to do anything on that box besides what I would authorize the back-up software to do. That is, they only need to create new files and read old ones (no updates or deletes). They shouldn't need the ability to execute bc
or a who
or anything of the sort.
I've thought about trying to chroot
each user into their home directory, but I'm kinda fuzzy on how to do all that.
Any suggestions on how to achieve this desired functionality?
Thanks!