安装vsftpd软件包
[root@localhost ~]# yum install vsftpd -y
[root@localhost ~]# yum install db4 db4-utils

建立vsftpd服务的宿主用户
[root@localhost ~]# useradd vir -s /sbin/nologin

创建日志文件
[root@localhost ~]# touch /var/log/vsftpd.log
[root@localhost ~]# chown vir:vir /var/log/vsftpd.log

修改 vsftp 配置文件
[root@localhost ~]# vi /etc/vsftpd/vsftpd.conf
#不允许匿名访问
anonymous_enable=NO
#本地用户可以访问
local_enable=YES
#使用户不能离开主目录
chroot_list_enable=YES
#允许上传
ascii_upload_enable=YES
#支持ASCII模式的下载功能
ascii_download_enable=YES
#千万别忘记添加
pam_service_name=vsftpd

#手工输入以下参数和值
#开启虚拟用户的功能
guest_enable=YES
#指定虚拟用户的宿主用户
guest_username=vir
user_config_dir=/etc/vsftpd/vuser_conf
#vsftpd的服务日志保存路径,默认不存在
xferlog_file=/var/log/vsftpd.log

先建立虚拟用户名单文件
[root@localhost ~]# vi /etc/vsftpd/vsftp_users.conf
#输入奇数行为账号,偶数行为密码
yb1 #账号
abcd1234 #密码
yb2
abcd1234

生成认证文件
db_load 找不到的话就先安装 db4-utils(yum install db4 db4-utils)
[root@localhost ~]# db_load -T -t hash -f /etc/vsftpd/vsftp_users.conf /etc/vsftpd/vsftp_users.db
修改其权限
[root@localhost ~]# chmod 600 /etc/vsftpd/vsftp_users.db

编辑认证文件,清空或注释文件中全部内容(保留第一行内容)
[root@localhost ~]# vi /etc/pam.d/vsftpd
清空之后,再输
auth required pam_userdb.so db=/etc/vsftpd/vsftp_users
account required pam_userdb.so db=/etc/vsftpd/vsftp_users

建立虚拟用户配置文件存放位置
[root@localhost ~]# mkdir /etc/vsftpd/vuser_conf/

自定义用户(可以分别设置不同虚拟用户权限等)
[root@localhost ~]# vi /etc/vsftpd/vuser_conf/yb1

添加以下内容
local_root=/data01/yb1 #虚拟用户yb2根目录
write_enable=YES
anon_umask=022
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES

[root@localhost ~]# vi /etc/vsftpd/vuser_conf/yb2

添加以下内容
local_root=/data01/yb2 #虚拟用户yb2根目录
write_enable=YES
anon_umask=022
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES

OK了,启动或重启 vsftp
[root@localhost ~]# systemctl vsftpd restart(重启 restart)

连接 FTP 时若提示错误:vsftpd 530 login incorrect
原因:/etc/vsftpd.conf参数配置里面有空格
解决方法:去掉空格

连接 FTP 时若提示错误:500 OOPS: vsftpd: refusing to run with writable root inside chroot()
原因:vsftpd的安全规则是不允许ftp用户对ftp根目录有可写权限,因此那个ftp用户就被服务器拒绝了。
解决方法:
chmod a-w /data01/yb1
chmod a-w /data01/yb2

RHEL7 -- Linux搭建FTP虚拟用户的更多相关文章

  1. Linux 下 FTP虚拟用户的使用配置

    Linux下FTP虚拟用户的使用配置 Linux的FTP服务支持3种用户: 1.匿名帐户 2.本地帐户 3.虚拟用户 为什么要使用虚拟用户: 匿名帐户可以很好的保证FTP服务器的安全性,但是,对匿名用 ...

  2. Linux Centos 通过虚拟用户访问FTP的配置

    Linux Centos 通过虚拟用户访问FTP的配置 实验需求: 让下面4个虚拟用户使用系统用户ftpvu的权限来连接到Linux FTP服务器,并确保都锁定在 自己的虚拟用户目录,不能切换到其他目 ...

  3. 使用Linux搭建FTP服务器实现文件共享

    使用Linux搭建FTP服务器实现文件共享... ---------------- Linux中的文件共享:FTPVSFTPDVSFTPD虚拟用户 FTP可以用在Linux与Linux 和Window ...

  4. Linux下FTP虚拟账号环境部署总结

    vsftp的用户有三种类型:匿名用户.系统用户.虚拟用户.1)匿名登录:在登录FTP时使用默认的用户名,一般是ftp或anonymous.2)本地用户登录:使用系统用户登录,在/etc/passwd中 ...

  5. Linux 搭建FTP

    Linux 搭建FTP 步骤一:安装 vsftpd 1,运行以下命令安装 vsftpd. yum install -y vsftpd 出现下图表示安装成功. 2,打开etc/vsftpd cd /et ...

  6. Linux下FTP虚拟账号环境部署简述

    vsftp的用户有三种类型:匿名用户.系统用户.虚拟用户.1)匿名登录:在登录FTP时使用默认的用户名,一般是ftp或anonymous.2)本地用户登录:使用系统用户登录,在/etc/passwd中 ...

  7. 007.FTP虚拟用户访问

    一 虚拟用户优点 可对每个用户进行单独设定权限. 每个用户单独配置文件,单独指定主目录,而不能访问系统的其它资源. 注意:虚拟用户目录和本地用户访问目录不冲突. 二 配置虚拟用户步骤 添加虚拟用户口令 ...

  8. CentOS 7搭建vsftp(虚拟用户方式登录)

    说明: vsftpd的版本:vsftpd-3.0.2-22.el7.x86_64 ftp 根目录 : /data/ftp ftp 配置文件目录:/etc/vsftpd ftp 虚拟用户权限配置文件目录 ...

  9. CentOS7 FTP服务搭建(虚拟用户访问FTP服务)

    概述 最近在搞Oracle在Linux系统下集群,针对Linux系统,笔人也是一片空白.Liunx外部文件的传输,避免不了使用FTP服务,所以现在就整理下,CentOS7环境下,FTP服务的搭建.FT ...

随机推荐

  1. foreach的一点理解

    首先什么样的数据才能实现foreach 1 实现IEnumerable这个接口 2 有GetEnumerable()这个方法 然后为啥实现这个接口或者有这个方法就可以实现foreach遍历 首先我先用 ...

  2. C语言实现的单链表

    链表是一种线性表,但是并不是顺序存储,而是每个节点里面存储着下一个节点的指针,把存储数据元素的数据串链起来. 单链表的基本实现: typedef int DataType;//定义单链表typedef ...

  3. android alipay(移动支付,异步通知发起失败,但是支付成功)

    问题1:移动支付 demo测试,支付成功,但是异步通知没发起,help notify_url 需要服务器地址,不是本地网址 问题2:这回 支付成功了.也返回到return_url了.但是页面显示验证失 ...

  4. vs15

    vs15 preview5 离线安装包 vs15 preview5 离线安装包   1.介绍 vs15是微软打造的新一代IDE,全新的安装方式.官网介绍如下(https://blogs.msdn.mi ...

  5. 数据库之--- SQLite 语句

    一. 基础创表操作: 1. 创建表 CREATE TABLE IF NOT EXISTS t_dog(name text, age bolb, weight real); 2. 插入记录 INSERT ...

  6. xcode 升级插件失效问题

    摘要  Xcode 升级到7之后VVDocumenter-Xcode,OMColorSense,KSImageNamed等一系列的插件失效的解决办法,以及不小心误点了 Skipbundle 的解决办法 ...

  7. C与OC、C++的区别

    C语言的特点:1)C语言是结构化语言,层次清晰,调试和维护比较容易2)表现能力和处理能力比较强,可直接访问内存的物理地址3)c语言实现对硬件的编辑,c语言课用语系统软件的开发,也可用语应用软件的开发, ...

  8. 解决在HTTPS页面里嵌套HTTP页面浏览器block的问题

    问题描述: 浏览器默认是不允许在HTTPS里面引用HTTP页面的,ie下面会弹出提示框提示是否显示不安全的内容,一般都会弹出提示框,用户确认后才会继续加载,但是chrome下面直接被block掉,只在 ...

  9. 21个很棒的jQuery分页插件下载

    分页是指将一个大内容划分为各种不同的页面,因此网站的分页是一个很重要的部分,必须让内容有组织性和易于访问.分页有各两种不同的方式,手动跟自动.最受欢迎简单和广泛的方法是jQuery插件.下面我们收集了 ...

  10. python之---类和实例

    类和实例: 面向对象最重要的概念就是类(Class)和实例(Instance),必须牢记类是抽象的模板,比如Student类,而实例是根据类创建出来的一个个具体的“对象”,每个对象都拥有相同的方法,但 ...