End goals
- avoid using CGI
- restrict PHP programs to user directory
- allow PHP from http to manipulate files/links/uploads/etc...

Apache main config sets user and group to "nobody"
Apache Virtual Host for site contains
        # restrict web pages root in specific sub-directory
  DocumentRoot /www/user1/public
        # have web server run as user for file upload permissions,
        # and link/file set unset
  user user1
        # set group nobody if user belongs to group with permissions
  group nobody
        #set base dir for PHP operations to user "root" directory to allow
        # out of web accessible folder storage of inc files etc...
  php_admin_value open_base_dir /www/user1
        # provide upload directory within the php base directory for
        # permission to upload and move files to final location
  php_admin_value upload_tmp_dir /www/user1/tmp


Logically, this should...
- allow php to manipulate the users area fully but deny access to commands
outside his directory
- allow php to upload files into private tmp directory owned by user, which php
then has permission to relocate as needed
- allow php to create symlinks, delete files, any other such filesystem
operations within his personal tree
- require any executables to be within his directory tree for php to call them


Clarifications, corrections, comments?

Dave


-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to