让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 重新挂载,再执行上面的命令,成功!




     本文转自 wzlinux 51CTO博客,原文链接:http://blog.51cto.com/wzlinux/2052990,如需转载请自行联系原作者


相关文章
|
网络协议 C# 文件存储
C# 利用FluentFTP实现FTP上传下载功能
C# 利用FluentFTP实现FTP上传下载功能
480 0
C# 利用FluentFTP实现FTP上传下载功能
|
JavaScript
使用nodejs连接ftp上传下载
使用nodejs连接ftp,进行ftp的操作,包括列表、上传、下载以及速率等。
使用nodejs连接ftp上传下载
|
4月前
|
Java
Java SpringBoot FTP 上传下载文件
Java SpringBoot FTP 上传下载文件
183 0
|
Apache
基于commons-net实现ftp创建文件夹、上传、下载功能.
基于commons-net实现ftp创建文件夹、上传、下载功能.
254 0
Java——通过Java代码从ftp服务器下载文件
Java——通过Java代码从ftp服务器下载文件
|
7月前
|
Java
java上传、下载、预览、删除ftp服务器上的文件
java上传、下载、预览、删除ftp服务器上的文件
|
7月前
|
Shell Python Windows
通过Python实现win11环境下FTP的上传与下载
通过Python实现win11环境下FTP的上传与下载
108 0
|
Shell
从 FTP 服务器下载文件
从 FTP 服务器下载文件
80 0
|
Shell
从FTP服务器下载文件
从FTP服务器下载文件
91 0
|
编解码 数据安全/隐私保护 Python
Python操作FTP服务器实现文件和文件夹的上传与下载,python清理ftp目录下的所有文件和非空文件夹
Python操作FTP服务器实现文件和文件夹的上传与下载,python清理ftp目录下的所有文件和非空文件夹
267 0