我的项目位于共享的Linux托管服务器中。当然,托管服务提供商已经相对于其他服务器用户设置了必要的目录和文件所有权。我现在关注的是如何在我的域中设置权限,以便我的用户可以对他们应该具有的文件和文件夹具有读取权限,并且仍然允许我的脚本保持对它的读/写访问权。
问题:建议的权限是什么:
公共文件和文件夹(只读?)
存储表单中上传文件的文件
将GD和缓存文件写入
存储服务器端脚本的文件夹(我主要使用PHP)
我的WWW根文件夹(index.php所在的位置)
先谢谢了。
答案 0 :(得分:7)
这是您需要最低权限原则的完美示例。允许ReadOnly向Web服务器的用户提供RO内容,允许只写入绝对需要写入的目录/文件。明确拒绝访问您不希望人们阅读的内容(配置文件,htaccess,带路径/ IP地址/密码的任何内容),如果您不使用它,则不允许任何额外处理(CGI可执行文件,服务器端包含) )。
最好的办法就是先拒绝一切,然后慢慢打开东西。首先尝试提供静态内容,看看Apache指令/模块的最小数量和文件系统的所有权和权限是什么让它工作。然后尝试一些RO PHP脚本。然后尝试一些RW PHP脚本。然后是数据库连接,等等,你明白了......这是一个非常繁琐的过程,你想要提前计划你要测试的东西;我倾向于使用wget命令编写长脚本,试图向服务器执行好的和坏的事情。进行一次更改,重新启动,重新运行脚本,查看上次发生的更改。观察 - 修改 - 分析,直到你不能再看它了;)