以超级用户root和普通用户public为例
需要了解以下关键点:
默认状态下:
1:删除(修改)权限不同于写入权限
2:删除和修改文件的权限只有其拥有者(上传者)和超级用户有
3:一个文件夹的拥有者拥有这个文件夹里面所有子文件所有的权限,无论该目录下子文件其拥有者是谁
大致方法如下:
1:创建public虚拟用户,禁止其ssh登录
在配置界面禁止匿名登录,给所有人读写权限
(如有不懂,请另搜索,此处不再赘述)
2:创建fFTP根目录myftp文件夹,使其拥有者为root,设置权限为755
设定根目录拥有者:chown root:root myftp (此处不应有-R)
设定文件夹以及内部文件权限:chmod 755 -R myftp
经过以上操作后,在这个文件夹里面,只允许超级用户上传
由此看到,普通用户无法在此文件夹写入文件(写入权限(由文件夹的属性决定))
普通用户无法删除该文件夹里面文件(修改权限-由其拥有者决定)
如果希望其他人下载,则在需要在超级用户上传文件时选择文件读取
通过这一步可以做到仅允许超级用户上传,修改,允许其他人下载的权限
如果想让普通用户也上传自己的文件
1:则在根目录里面继续创建一个子文件夹PublicFolder
2:设置拥有者为public chown public:public PublicFolder
3:设置文件夹属性775 chmod 775 -R PublicFolder
测试
可以看到,普通用户可上传文件
普通用户可删文件
如果希望其他用户下载,需要在上传文件时,设定文件权限