欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

Linux系统学习 十六、VSFTP服务—本地用户访问—基本用户

程序员文章站 2022-07-01 14:22:27
缺点,ftp密码是和系统密码是一致的,并不安全 先设置两个测试用户 test1 123123 test2 123123 基本用户基础配置 1、本地用户基本配置 local_enable-YES #允许本地用户登录 write_enable=YES #允许本地用户上传 local_umask=022 ......

缺点,ftp密码是和系统密码是一致的,并不安全

先设置两个测试用户

test1      123123

test2      123123

 Linux系统学习 十六、VSFTP服务—本地用户访问—基本用户

 

 Linux系统学习 十六、VSFTP服务—本地用户访问—基本用户

 

 

基本用户基础配置

1、本地用户基本配置

local_enable-yes                 #允许本地用户登录

write_enable=yes                 #允许本地用户上传

local_umask=022              #本地用户上传umask值

关闭防火墙,关闭selinux,直接修改配置文件

 Linux系统学习 十六、VSFTP服务—本地用户访问—基本用户

 

 Linux系统学习 十六、VSFTP服务—本地用户访问—基本用户

 

重启系统,重启vsftp服务

 Linux系统学习 十六、VSFTP服务—本地用户访问—基本用户

 

 

在test1的家目录下创建一个目录

 Linux系统学习 十六、VSFTP服务—本地用户访问—基本用户

 Linux系统学习 十六、VSFTP服务—本地用户访问—基本用户

 

 

登陆的默认位置

 Linux系统学习 十六、VSFTP服务—本地用户访问—基本用户

 

 

 

上传:

从本地的e盘上传一个文本文件

 Linux系统学习 十六、VSFTP服务—本地用户访问—基本用户

 

 

可以看到在/home/test1/目录下就有了1.txt文件

 Linux系统学习 十六、VSFTP服务—本地用户访问—基本用户

 

 

下载:

 Linux系统学习 十六、VSFTP服务—本地用户访问—基本用户

 

 Linux系统学习 十六、VSFTP服务—本地用户访问—基本用户

 

local_root=/var/ftp               #设置本地用户的ftp根目录(注意目录权限;不能针对不同用户,是对所有登陆者都生效的)

local_max_rate=0                 #限制最大传输速率(字节/秒)

 Linux系统学习 十六、VSFTP服务—本地用户访问—基本用户

 

 

需要自行添加

创建目录,重启ftp服务(只要修改了配置文件)

 Linux系统学习 十六、VSFTP服务—本地用户访问—基本用户

 

 

客户端退出重新登录

 Linux系统学习 十六、VSFTP服务—本地用户访问—基本用户

 

 

但是用test2连接时也是在相同的路径下了(在后面的虚拟用户访问中会有解决)

 Linux系统学习 十六、VSFTP服务—本地用户访问—基本用户

 

 

此时如果上传文件的话会出现以下问题

 Linux系统学习 十六、VSFTP服务—本地用户访问—基本用户

 

 

此时在配置文件中是允许写操作的,但是并不能上传,这是因为test1_root目录test1用户没有权限,只有root权限(所有者是root,所有组也是root)

 Linux系统学习 十六、VSFTP服务—本地用户访问—基本用户

 

 

解决方法:

创建一个用户组,将test1和test2添加到该组内

 Linux系统学习 十六、VSFTP服务—本地用户访问—基本用户

 

 

然后修改该目录的所属组和权限

 Linux系统学习 十六、VSFTP服务—本地用户访问—基本用户

 

 Linux系统学习 十六、VSFTP服务—本地用户访问—基本用户

 

重新上传:

此时就可以啦

 Linux系统学习 十六、VSFTP服务—本地用户访问—基本用户

 

 Linux系统学习 十六、VSFTP服务—本地用户访问—基本用户

这种其实存在一个很大的缺陷,可以往上级目录翻,有就是说,我可以访问整个系统的所有文件,虽然有些地方不能上传,但是我都可以下载,此时就可以下载出用户密码文件,很不安全

 Linux系统学习 十六、VSFTP服务—本地用户访问—基本用户

 

 Linux系统学习 十六、VSFTP服务—本地用户访问—基本用户

 

 Linux系统学习 十六、VSFTP服务—本地用户访问—基本用户

 

此时就要进行设置限制用户只能在特定目录下操作

把用户限制在家目录下:

chroot_local_user=yes             #开启用户目录限制(如果只开启此行,把所有用户都限制在用户主目录中)

 Linux系统学习 十六、VSFTP服务—本地用户访问—基本用户

 

 

重启服务

 Linux系统学习 十六、VSFTP服务—本地用户访问—基本用户

 

 

重新登录后,会显示直接在根目录下

 Linux系统学习 十六、VSFTP服务—本地用户访问—基本用户

 

 

但是ls后,看到的是1.txt也就是/tmp/test1_root/目录下的内容,也就是说ftp将/tmp/test1_root/目录就当做是根目录

 Linux系统学习 十六、VSFTP服务—本地用户访问—基本用户

 

 

开启以下三项,就可以将不同的用户做不同的限制了

chroot_local_user=yes

chroot_list_enable=yes

chroot_list_file=/etc/vsftpd/chroot_list          #写入/etc/vsftpd/chroot_list文件中的用户可以访问任何目录,其他用户限制在哪用户主目录

 Linux系统学习 十六、VSFTP服务—本地用户访问—基本用户

 

 

文件chroot_list默认是不存在的需要手工添加,然后直接将用户名写进去就好了

重启

我将用户test2写入该文件

此时test1就只能访问/tmp/test1_root/而test2用户就可以访问所有文件