Permissions for Multiple User VPS

I have a Linode 360 that I have recently setup and am migrating to from Mediatemple, where I have a VPS managed by Plesk. I dislike the Plesk interface and the mess it makes of a lot of things, but appreciated its ability to allow multiple people access to different domains on a server. I have most everything setup the way I would like it, but am having issues with permissions for my domain directories.

I am running Ubuntu 8.04 LTS and Apache 2 as my web server. I have domains successfully located in /var/www/vhosts/domainname.com but have to modify files as root in order to add/change files for the domains. I would like to setup access with the following criteria:

1. Each domain can have a user assigned to it (and allow for the same user to manage multiple domains - could even create symlinks in their home folder to their domains)

2. Certain users will have shell access and may be chrooted to the domain directory they control

3. FTP needs to be setup and able to correctly access the domains so that content editors for each domain can upload/download without permissions issues

I am relatively new to linux sysadmin and have searched for a good guide to help solve these issues but haven't been able to find one yet. Thanks in advance for your help.

1 Reply

your best bet for something like this would be to create an individual linux user, who has control of those domains in their home directory. for example:

create user 'john' and put his directories in his public_html dir

john@linode:~/public_html$ ls -la

drwxrwxr-x 5 john www-data 4096 Aug 12 12:04 domain1.com

drwxrwxr-x 5 john www-data 4096 Aug 12 12:04 domain2.com

drwxrwxr-x 5 john www-data 4096 Aug 12 12:04 domain3.com

then in the apache config, point those domains to his directory.

as for ftp, just make sure the setting is enabled to chroot the users in their home directory. and if you dont want them to have ssh access (usually the case) set their home shell to /bin/noshell.

if this sounds confusing just let me know ill break it down more.

Reply

Please enter an answer
Tips:

You can mention users to notify them: @username

You can use Markdown to format your question. For more examples see the Markdown Cheatsheet.

> I’m a blockquote.

I’m a blockquote.

[I'm a link] (https://www.google.com)

I'm a link

**I am bold** I am bold

*I am italicized* I am italicized

Community Code of Conduct