2013-07-15 60 views
0

我目前在Zend Server上面授予许多权利/所有权方面的问题。我总是做一个在Ubuntu/Linux上正确授予所有权/权利

CHOWN用户-R路径/到/文件

给予777 fodlers和文件,然后结了大量的777 ...与 有些不需要那777,如果有一个用户到zend服务器,我希望我 可以只给它所有权的一切....所以我没有777 这么多的东西

到目前为止赋予的权利/所有权和固定与Zend服务器CREATING问题...这就是为什么我在这里:(

我也有问题,调试,当错误发生时我是不知道如何检查是什么造成的。我确实在阅读论坛上的人们在做他们的命令。有时我也不确定要授予哪个文件。我知道我的zend服务器是一个用户本身,我相信...

任何意见或指导将不胜感激。

我有这些为用户

zend:x:106:112::/usr/local/zend/gui/lighttpd/:/bin/false 
root:x:0:0:root:/root:/bin/bash 

等等。我认为守护进程和zend与zend服务器有关。

+2

-r将删除读取权限,你确定你不是指-R递归? -r和-R不是一回事 – Anigel

+1

没有。守护进程与zend无关。 –

+0

@Anigel是的,我的意思是递归,谢谢马克B我发现的新问题实际上是由于无法创建临时文件,我发现了一个日志。所以这可能是由于导致此问题的权限更改所致。我给予了许可,但没有删除。不知道为什么会发生。 chown只给一个人一个所有权吗? – CodeGuru

回答

1

给予网络服务器许可时请注意。

权限很简单。你只需要记住在* nix中有读写和执行权限。您不需要任何脚本文件中的执行权限,但所有文件夹都必须具有执行权限。这给你读取和写入权限。您将需要所有文件和文件夹的读取权限。您只需要对Web服务器需要更改的文件夹和文件具有写入权限。基本上,您需要读取临时文件夹的写入和执行权限,并且如果使用文件上传,则需要存储文件的文件夹。您可能只需要对Web服务器需要更改的文件具有写入权限(对于简单的网站,这些文件可能不在那里)。

+0

只是为了检查,如果我做一个chown,是否删除其他用户谁是夹? – CodeGuru

+0

Root =拥有者,Ubuntu(用户)=组? – CodeGuru

+0

您对每个文件夹/文件所有者,组,所有用户有三个权限。因此,如果您更改所有者,新所有者将获得应用于以前所有者的权限。如果执行ls -l,第三列是所有者和第四列,请检查此[了解Linux文件权限](http://www.linux.com/learn/tutorials/309527-understanding-linux-file-permissions) – bansi

2

从安全角度来看,你永远不应该创建一个不是可执行shell脚本的文件可执行文件(位0集)(CGI脚本,比如PHP不需要执行权限),将它设置为777只是简单的懒惰和危险的。

我经常运行下面的纠正上的Web文件夹的权限:

chown username:groupname * -R 
find -type d -exec chmod 755 {} \; 
find -type f -exec chmod 644 {} \; 

这将给所有目录:由所有者,组和其他人

  • 读取权限
  • 只有业主写入许可
  • 执行许可,允许输入他们的内容和列表。

,它会给所有文件:

  • 读取由所有者,组和其他人的允许。
  • 只有所有者写入许可。
  • 根本没有执行权限。

如果你可以在Apache/HTTP服务器用户添加到用户的组(usermod -G apache -a username),你甚至可以进一步向750和640,这将防止其他用户能够读取网页文件,拉紧这(这可以尽管取决于服务器配置,但可以通过网络服务器绕过)。

+0

有多少用户可以拥有一个文件夹,一个权利?但我的zend服务器不能写日志等,似乎有权限问题。我不确定是否zend是用户本身?如果我给zend所有权,那么我的Ubuntu用户和root用户呢?他们会失去所有权?特别是如果它是一个755只有一个人可以写?我对吗? ubuntu/Zend/root – CodeGuru

+0

用户可以在多个组中,查看用户正在运行的用户组。像apache这样的进程通常在以“root”身份运行时打开日志文件,然后他们更改其uid,这就是为什么即使它不以用户身份运行也可以访问它们的原因。 – Geoffrey