Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

Let's say I have a server and a bunch of developers working on different sites(php and django) and I don't want the different developers to access each other's sites.

How should I go about implementing such a solution? (some pointers will do)

share|improve this question
add comment

5 Answers

up vote 2 down vote accepted

i think, under apache suEXEC will do the job.

share|improve this answer
add comment

suPHP does this very well. There is a solution with Apache by using setuid and setgid.

share|improve this answer
    
Yes, for the PHP stuff suPHP should do the trick well. This way the PHP scripts only need to be readable for to the developers own accounts, as PHP will execute with respective users permissions. –  andol Dec 6 '09 at 22:45
    
That's exactly it ! –  Antoine Benkemoun Dec 7 '09 at 7:27
add comment

You need to chroot your FTP uploads (easy in Proftpd). If it is SCP uploads, you must make SSH directory chrooted (special patches needed).

share|improve this answer
add comment

Antoine is right. You can check this link for setting up a apache-suphp webserver.

http://techtrunch.com/installations/compile-apache-suphp-ubuntu

suPHP is a tool for executing PHP scripts with the permissions of their owners. It consists of an Apache module (mod_suphp) and a setuid root binary (suphp) that is called by the Apache module to change the uid of the process executing the PHP interpreter.

In suphp configuration the files must be in the ownership of the user, other wise php file requests will end up in Internal Server error.

share|improve this answer
add comment

if you are talking about through just ftp, thats file system permissions that controls that.

share|improve this answer
    
No, they don't. –  reinierpost Dec 7 '09 at 13:52
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.