Linux系统学习 十六、VSFTP服务—本地用户访问—基本用户基础配置
缺点,ftp密码是和系统密码是一致的,并不安全
先设置两个测试用户
test1 123123
test2 123123


基本用户基础配置
1、本地用户基本配置
local_enable-YES #允许本地用户登录
write_enable=YES #允许本地用户上传
local_umask=022 #本地用户上传umask值
关闭防火墙,关闭SELinux,直接修改配置文件


重启系统,重启vsftp服务

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


登陆的默认位置

上传:
从本地的E盘上传一个文本文件

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

下载:


local_root=/var/ftp #设置本地用户的ftp根目录(注意目录权限;不能针对不同用户,是对所有登陆者都生效的)
local_max_rate=0 #限制最大传输速率(字节/秒)

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

客户端退出重新登录

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

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

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

解决方法:
创建一个用户组,将test1和test2添加到该组内

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


重新上传:
此时就可以啦


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



此时就要进行设置限制用户只能在特定目录下操作
把用户限制在家目录下:
chroot_local_user=YES #开启用户目录限制(如果只开启此行,把所有用户都限制在用户主目录中)

重启服务

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

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

开启以下三项,就可以将不同的用户做不同的限制了
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list #写入/etc/vsftpd/chroot_list文件中的用户可以访问任何目录,其他用户限制在哪用户主目录

文件chroot_list默认是不存在的需要手工添加,然后直接将用户名写进去就好了
重启
我将用户test2写入该文件
此时test1就只能访问/tmp/test1_root/而test2用户就可以访问所有文件
Linux系统学习 十六、VSFTP服务—本地用户访问—基本用户基础配置的更多相关文章
- Linux系统学习 十七、VSFTP服务—本地用户访问—用户访问控制
FTP相关文件中用户控制列表文件 /etc/vsftpd/ftpusers #该文件永远都是黑名单(针对访问ftp服务,一般不做修改) /etc/vsftpd/user_list ...
- Linux系统学习 十三、VSFTP服务—相关文件
常见的FTP服务器程序 IIS.Serv-U (windwards中) wu-ftpd(淘汰了).Proftpd (Linux中) vsftpd(Very Secure ...
- Linux系统学习 十八、VSFTP服务—虚拟用户访问—配置虚拟用户访问
配置虚拟用户访问 首先至少要关闭userlist 改完配置文件是要重启服务来使它生效 其实在刚装好vsftp的时候的配置文件不用修改的情况下配置虚拟用户访问控制是最好的 local_root选项不影响 ...
- Linux系统学习 十五、VSFTP服务—匿名用户访问(不推荐使用,不安全)
匿名用户访问 基本配置: anonymous_enable #允许匿名用户访问 anon_upload_enable #允许匿名用户上传 anon_mkdir_write ...
- [转] Linux学习之CentOS(三十六)--FTP服务原理及vsfptd的安装、配置
本篇随笔将讲解FTP服务的原理以及vsfptd这个最常用的FTP服务程序的安装与配置... 一.FTP服务原理 FTP(File Transfer Protocol)是一个非常古老并且应用十分广泛的文 ...
- Linux系统学习 八、SSH服务—SSH远程管理服务
1.SSH简介 ssh(安全外壳协议)是Secure Shell的缩写,是建立在应用层和传输层基础上的安全协议.传输的时候是经过加密的,防止信息泄露,比telnet(明文传递)要安全很多. ftp安装 ...
- linux系统学习笔记:无死角理解保存的设置用户ID,设置用户ID位,有效用户ID,实际用户ID
一.基本概念 实际用户ID(RUID):用于标识一个系统中用户是谁,一般是在登录之后,就被唯一的确定,就是登录的用户的uid. 有效用户ID(EUID):用于系统决定用户对系统资源的权限,也就是说当用 ...
- Linux系统学习 十九、VSFTP服务—虚拟用户访问—为每个虚拟用户建立自己的配置文件,单独定义权限
为每个虚拟用户建立自己的配置文件,单独定义权限 可以给每个虚拟用户单独建立目录,并建立自己的配置文件.这样方便单独配置权限,并可以单独指定上传目录 1.修改配置文件 vi /etc/vsftpd/vs ...
- Linux系统学习 十四、VSFTP服务—配置文件解析、客户端使用
3.配置文件解析 默认配置选项: 一般情况下不允许匿名用户登录 全局配置选项:(手工添加) listen_address=192.168.4.1 #设置监听地址 listen_ ...
随机推荐
- nitacm20301 poor math
题目:给你一个n(1<=n<=1,000,000,000,000 ),找到满足1/n=1/a+1/b(0<a<=b)的数量. 题目链接:https://www.nitacm.c ...
- Codeforce-620C
There are n pearls in a row. Let's enumerate them with integers from 1 to n from the left to the rig ...
- iOS开发 为何 大不如前?原因竟然是这个?
前言: 近期,社会上对iOS开发行业的负面信息越来越多,并且还被一些黑骗机构的胡诌八扯越描越黑,现在iOS开发按照开发者与公司招聘的数量上来看,是显示的供大于求,但是从各公司的招人计划上来看,明显是供 ...
- Swing JTable使用
package cn.ychx; import java.awt.Dimension; import java.awt.Toolkit; import java.sql.Connection; imp ...
- 整理了2019年上千道Java面试题,近500页文档,用了1个月时间!
spring 面试题 1.一般问题 1.1.不同版本的 spring Framework 有哪些主要功能? 1.2.什么是 spring Framework? 1.3.列举 spring Framew ...
- ELK输出nginx的日志(未完成)
我们先准备3台centos7服务器 171 做 elasticsearch,kibana的操作 172 做logstash 的操作 173 做nginx 的操作 软件 版本号 elasticsearc ...
- 在 ASP.NET Core 中使用 AutoMapper 使 Entity 和 Resource 之间进行映射
目录 从 NuGet 安装 AutoMapper 添加 Entity类 和 Resource类 添加一个 Profile文件,配置映射关系 在Startup中对AutoMapper进行注册 在项目中使 ...
- django路由匹配层
目录 orm表关系如何建立 一对多 多对多 一对一 django请求生命周期流程图 路由层 路由的简单配置 Django路由匹配规律 分组 无名分组 有名分组 反向解析 路由分发 名称空间 伪静态 虚 ...
- Power BI 的数据源及数据刷新
Power BI 目前可以连接超过100种数据源,包含常见的各种数据库,文件,数据仓库,云等等. 不同的数据源支持不同的连接方式,通常来讲,Power BI 支持两种数据连接方式: 导入(import ...
- Python—脚本程序生成exe可执行程序(pyinstaller)
一.pyinstaller的简介 Python是一个脚本语言,被解释器解释执行.它的发布方式: .py文件:对于开源项目或者源码没那么重要的,直接提供源码,需要使用者自行安装Python并且安装依赖的 ...