app教程网 学习教程 LINUX下FTP用户和apache用户权限问题

LINUX下FTP用户和apache用户权限问题

本来我根本没学过LINUX系统。因为论坛空间的需要,买了国外的VPS,装了LINUX系统。刚拿到后台账号的时候,我完全迷茫了。一切都是空白。没有系统,没有HTTP服务器,是赤裸裸的“网络硬盘”。

还好百度大叔在,我可以“水中捉月”了。不查不知道。原来这些国外VP的使用信息也少得可怜。终于学会了SSH,费了好大劲终于装上了kloxo面板。这个终于好了,有HTTP,

FTP也是可用的。传输完信息,发现权限的问题很严重。“用户名”和“用户组”的所有者是什么?当我试图用chown命令更改“owner”时,我几乎被弄糊涂了。终于让论坛跑了,没多久,问题又来了。

不知道怎么回事,FTP文件显示不了,但是无论如何都显示不了,有时候还登录不了。百度大叔也没找到可用的资料。估计只有我一个人遇到这个问题吧!FTP权限的问题我想了很久。

估计是FTP用户的权限和目录所有者的权限有问题。kloxo面板中的FTP用户管理功能太简单了,改了也没用,只好查相关命令。

As a result of belonging to the street hooligan user group, the following contents appear: Creating mailbox file: File already exists User added: Warning: Home directory already exists. No files were copied from the skel directory into it. I guess I've created the same file before,

当我们使用PHP程序时,如果你想在安装后删除整个目录,你会发现apache用户已经生成了一些文件,ftp用户是无法删除的。

其实这个是有办法解决的。

方法一。用户组控制方法:首先将虚拟主机中的所有虚拟用户(ftp用户)添加到apache组中,然后将umask设置为002,使用户和组都具有读写执行权限。这是一个简单的方法,但不安全。

不同的用户可以互相删除对方的文件,因为他们属于同一个组,组有读、写、执行的权限。

方法二。使用linux高级权限管理acl。

在一个目录上设置双重权限,除了用户自己的用户组,加上apache的读写权限,这样用户就可以删除apache生成的文件。但是对于其他虚拟用户,他不能删除。

让我们来看看第二种控制方法

在linux系统中,不仅可以将文件(目录)权限分配给所有者、同一组中的用户和其他用户。您也可以指定其他用户或组,但前提是在挂载分区时添加acl选项。

比如:挂载/dev/hda1 /home -o acl。

然后可以使用setfacl-mu:ftp:rwx/home/ftp/www命令为FTP用户分配/home/FTP/www目录的所有权限。

如果希望/home/ftp/www/下面新创建的目录和文件也有相同的权限,setfacl-d-mu:FTP:rwx/home/FTP/www。

设置默认权限。该命令还可以控制多个用户的不同权限。

比如setfacl-mu:FTP:rwx/home/www;setfacl-m u:tmp:r-x/home/www;Ftp用户拥有所有权限,而tmp用户拥有只读权限。

还可以设置mask的值:setfacl-mm m:rwx/home/www;

请在此之前完成以下任务:setfacl-m u:Apache:rwx/home/VM user/www;setfacl-d-m u:VM user:rwx/home/VM user/www;setfacl-d-m u:Apache:rwx/home/VM user/www;setfacl-m m:rwx/home/VM user/www;setfacl-d-m m:rwx/home/VM user/www;

这样在安装一个PHP程序的时候就不会提示apache用户没有写文件的权限,想删除一个目录的时候也不会因为下面有apache用户生成的文件而无法删除。

当然这种方法有点限制,就是基本上只能使用ext2和ext3分区格式,其他的,比如xfs和jfs,不能直接使用,只能修改后使用。

本文来自网络,不代表本站立场,转载请注明出处:https: