在linux系统上部署FTP服务时进行权限管理(利用chown,chmod命令实现)

时间:2024-03-09 22:39:19

我们有时候需要通过FTP服务进行资源共享,但是经常又希望分发出去的不同的帐号有着不同的访问权限,比如现在有帐号A,B,C,而在资源文件夹内有三个对应的文件夹file_a,file_b,file_c,我们希望A只能访问file_a,而不能访问file_b,file_c;其他帐号同理,有着各自的访问域。这个时候,可以通过设置文件的所属和访问权限实现。本文系统基于ubuntu 16.04, FTP使用的是vsftpd进行部署的。

一般来说,文件如果是以D的帐号进行建立的,那么其文件所属就是D,一般来说除了root用户,就只有D可以进行访问,编辑和运行。其权限一般为777,如果我们希望除了root用户,只有A用户可以读和运行(一般公开的数据不允许他人删除和写入操作),那么可以:

# 假设file_a是文件夹
sudo chown -R user_A file_a/
sudo chmod -R 500 file_a/

其实很好理解,通过chown将文件归属者改成需要设置给予权限的用户A后,通过chmod将其访问权限设置为r-x,—,---,也就是只有所属者可读可运行,不可写即可了。从而就可以实现FTP给予不同用户以不同的访问域了。这是个直接粗暴的做法,如果有更好的做法,欢迎留言区评论建议,谢谢。

Reference

[1]. chmod 权限 命令详细用法
[2]. Linux chown命令