让FTP用户自由的上传下载

一、背景

我们的情况是这样的,我们要对 Tomcat 的网页目录配置 FTP 用户,有的用户使用 A 路径,有的使用 B 路径,但是都在 Tomcat 的管理目录下面,针对权限我们也不能全部改成某个用户的,那怎么样才可以是用户自由的再自己的家目录进行上传下载呢,那我们就会用 Linux 的 ACL 控制。

二、ACL 的使用

ACL 即 Access Control List 主要的目的是提供传统的 owner,group,others 的 read,write,execute 权限之外的具体权限设置,ACL可以针对单一用户、单一文件或目录来进行 r,w,x 的权限控制,对于需要特殊权限的使用状况有一定帮助。如,某一个文件,不让单一的某个用户访问。

ACL使用两个命令来对其进行控制。 > getfacl:取得某个文件/目录的ACL设置项目 > setfacl:设置某个文件/目录的ACL设置项目

setfacl 参数 > -m:设置后续acl参数 > -x:删除后续acl参数
> -b:删除全部的acl参数 > -k:删除默认的acl参数 > -R:递归设置acl,包括子目录 > -d:设置默认acl

假如 test1 的家目录是网页目录下面的 /var/www/html/test1,那我们创建 test1 用户。

useradd -d /var/www/html/test1 test1

然后给 test1 用户设定密码,我们再对此目录设定 acl 权限。

setfacl -m u:test1:rwx /var/www/html/test1

之后我们就可以再这个目录里面自由的上传下载了。

查看目录的 acl 属性使用如下命令查看。

getfacl /var/www/html/test1

问题:setfacl提示 Operation not supported

我们在设定权限的时候,可能会遇到这种问题。

解决方法:重新修改/etc/fstab文件,加入acl 选项

/dev/sda5             /var                ext4    defaults,acl    0 0

然后:mount -o remount /var 重新挂载,再执行上面的命令,成功!

相关文章
相关标签/搜索