说明:云服务器部署和本地服务器部署一样,都需要开通指定的相应端口,只不过云服务器需要在安全组规则中打开相应的端口允许通过。

环境说明:

对应的用户对应不同的密码,对应不同的数据目录,如下图:

具体步骤#

 1) 安装软件

# yum -y install vsftpd

2) 创建相应的ftp数据目录

# mkdir -p /opt/ftp/{come,out}

3) 创建一个用户提供给虚拟用户使用

# useradd -s /sbin/nologin virtual

4) 将ftp数据目录设置成virtual用户

# chown virtual. /opt/ftp/ -R
# ll /opt/ftp/
total 8
drwxr-xr-x 2 virtual virtual 4096 Apr 17 12:07 come
drwxr-xr-x 2 virtual virtual 4096 Apr 17 12:07 out

5) 创建虚拟帐号与密码的文本文件(一行账号,一行密码, 注意不要有多余的空格)

# vim /etc/vsftpd/logins.txt
ftpComeSsbq
ftp_come_#@UkieO9
ftpOutSsbq
ftp_out_#@45oUkie

6) 将创建好的密码文件txt格式转换db格式

# db_load -T -t hash -f /etc/vsftpd/logins.txt /etc/vsftpd/login.db

7) 定义db文件的权限

# chmod 600 /etc/vsftpd/login.db

8) 定义pam认证文件(注意:db=/etc/vsftpd/login 文件就是上面生成的login.db文件;省略后缀.db)

# vim /etc/pam.d/ftp
auth  required  /lib64/security/pam_userdb.so  db=/etc/vsftpd/login
account  required  /lib64/security/pam_userdb.so  db=/etc/vsftpd/login

9) 配置vsftpd主配置文件 (guest_username=virtual 对应上面创建的用户)

# vim /etc/vsftpd/vsftpd.conf
#禁止匿名登录FTP服务器
anonymous_enable=NO
#允许本地用户登录FTP服务器
local_enable=YES
#可以上传(全局控制)
write_enable=NO
#匿名用户可以上传
anon_upload_enable=NO
#匿名用户可以建目录
anon_mkdir_write_enable=NO
#匿名用户修改删除
anon_other_write_enable=NO
#全部用户被限制在主目录
chroot_local_user=YES#2.3.5版本之后,如果用户被限定在了其主目录下,则该用户的主目录不能再具有写权限了,需新增加下面这条配置
#allow_writeable_chroot=YES#将所有用户看成虚拟用户guest
guest_enable=YES
#指定虚拟用户,也就是将guest用户映射到virtual用户
guest_username=virtual
#指定为独立服务
listen=YES
#指定监听的端口
listen_port=21
#开启被动模式
pasv_enable=YES
#FTP服务器公网IP
pasv_address=<FTP服务器公网IP>
#设置被动模式下,建立数据传输可使用port范围的最小值
pasv_min_port=10000
#设置被动模式下,建立数据传输可使用port范围的最大值
pasv_max_port=10088
#是否允许匿名用户下载全局可读的文件
anon_world_readable_only=NO
#指定虚拟用户配置文件的路径
user_config_dir=/etc/vsftpd/user_conf

10) 创建上面配置文件中指定的子配置文件目录 user_conf

# mkdir /etc/vsftpd/user_conf

11) 定义 ftpComeSsbq 用户的配置文件(注意:这里创建配置用户配置文件的文件名必须与上面创建的用户名一致)

# vim /etc/vsftpd/user_conf/ftpComeSsbq
write_enable=YES
anon_world_readable_only=no
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
anon_umask=022
local_root=/opt/ftp/come

12) 定义 ftpOutSsbq 用户的配置文件

# vim /etc/vsftpd/user_conf/ftpOutSsbq
write_enable=YES
anon_world_readable_only=no
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
anon_umask=022
local_root=/opt/ftp/out

13) 启动vsftpd

# service vsftpd start

14) 测试

  • 使用 lftp 测试,格式为:lftp 用户名:密码@ftp地址:传送端口(默认21端口,如果是21端口则可以不用添加)

    [root@srt_aliyun_39 ~]# lftp ftpComeSsbq:ftp_come_#@UkieO9@120.79.xx.xx
    lftp ftpComeSsbq@120.79.xx.xx:~> pwd
    ftp://ftpComeSsbq:ftp_come_#%40UkieO9@120.79.xx.xx
    lftp ftpComeSsbq@120.79.xx.xx:~> mkdir test
    mkdir ok, `test' created
    lftp ftpComeSsbq@120.79.xx.xx:/> ls
    drwx------    2 506      506          4096 Apr 17 05:32 test
    lftp ftpComeSsbq@120.79.xx.xx:/> rm -rf test/
    rm ok, `test/' removed 

  • 使用 windows 文件夹测试 格式:ftp:ftp地址 (说明:打开ftp被动模式,控制面板 > 网络和Internet > Internet 选项 > 高级 。勾选 启用 FTP 文件夹视图,勾选 使用被动 FTP。)

  

  • 浏览器测试:ftp://ftp地址

  

至此就完成了 ftp 虚拟用户的部署。

vsftpd 虚拟用户相关推荐

  1. Linux之Vsftpd虚拟用户、扩展应用tcp_wrapper实验总结

    Linux之Vsftpd虚拟用户实验总结 一.vsftpd简介 vsftpd 是一个 UNIX 类操作系统上运行的服务器的名字,它可以运行在诸如 Linux, BSD, Solaris, HP-UX ...

  2. linux搭建vsftpd虚拟用户访问

    配置vsftpd服务 FTP服务器默认匿名可以访问. 1.搭建yum仓库   [root@accp~]# vim /etc/yum.repos.d/dvd.repo   [server]   name ...

  3. centos创建vsftpd虚拟用户

    CentOS Vsftpd服务器(虚拟用户建立) 一.安装vsftpd服务相关组件 需要安装组件vsftpd pam db4 db4-utils [root@CentOS /]# yum -y ins ...

  4. linux之vsftpd虚拟用户搭建

    vsftpd虚拟用户的配置过程 系统版本:Redhat 4.0 1.安装软件包          #rpm -ivh /mnt/RedHat/RPMS/vsftpd...... 2.建立虚拟用户口令库 ...

  5. FTP服务(3)实现基于文件验证的vsftpd虚拟用户

    1.虚拟用户 所有虚拟用户会统一映射为一个指定的系统帐号: 访问共享位置,即为此系统帐号的家目录各虚拟用户可被赋予不同的访问权限,通过匿名用户的权限控制参数进行指定虚拟用户 帐号的存储方式: 文件:编 ...

  6. vsftpd虚拟用户帐号

    vsftpd虚拟用户帐号的设置步骤:   1.建立虚拟用户口令库文件   2.生成vsftpd的认证文件   3.建立虚拟用户所需的PAM配置文件   4.建立虚拟用户所要访问的目录并设置相应权限   ...

  7. linux下配置vsftpd虚拟用户为登录用户

    1.安装vsftpd 安装依赖包: yum -y install pam pam-devel db4 de4-devel db4-uitls db4-tcl 新建vsftpd系统用户: #建立Vsft ...

  8. Vsftpd 虚拟用户配置参考---终极版

    Vsftpd 虚拟用户配置文档 一.主要文件列表 虚拟用户列表 account.txt 口令库文件 /etc/vsfptd/account.db PAM认证 /etc/pam.d/vs_1 主配置文件 ...

  9. vsftpd虚拟用户整理

    Vsftpd虚拟用户的配置 第一步.安装 # wget http://docs.linuxtone.org/soft/lemp/CentOS-Base.repo # yum clean all # y ...

  10. vsftpd虚拟用户

    转自 http://kindit.blog.51cto.com/2286921/1217428 使用vsftpd虚拟用户可以将权限限制在每个用户的根目录里,这样解决了匿名用户不能正对每个人进行权限控制 ...

最新文章

  1. (传送门)2/dev/null和/dev/null 21和21/dev/null
  2. python基础|字符编码
  3. Megacli恢复RAID0磁盘数据
  4. WinCE内核裁减(中文字体)及字库和内核的分离
  5. Linux设备驱动模型3——platform平台总线工作原理
  6. JavaSE笔记(0)JavaSE学习路线
  7. python视频转化_python实现视频读取和转化图片
  8. Word论文排版之样式的使用
  9. 如何区分精确率(precision)、准确率(accuracy)和召回率(recall)
  10. NetGear stora 重置成功后,个人文件夹丢失的找回办法
  11. 我的美丽天使(My Fair Angel)入门经典教程(下载 安装 汉化 使用)
  12. 量化投资和主观投资到底有什么区别?
  13. 八年级英语下册计算机教学总结,初中信息技术教学工作总结
  14. winsever 2008 r2 管理员账号没有权限_账号被泄密!跨境电商卖家如何保障账户安全?...
  15. Discord/MidJourney注册遇到电话号码无效 invalid phone number
  16. DevOps团队绩效考核重点
  17. PWM整流器仿真模型,SVPWM调制方式,空间矢量调制,仿真模型。 PWM整流器matlab仿真模型,SVPWM调制
  18. Markdown-img使用指南
  19. python使用zipfile模块来压缩文件时,解决如何不带入路径的问题
  20. Saturn Java作业SpringBoot方式开发打包

热门文章

  1. 推荐系统 - 多目标模型融合部分
  2. 【求职】江苏省 2020 年大学生核心就业能力培训笔记
  3. 台州银行笔试考什么_历年台州银行笔试和面试经验分享
  4. [Learn Android Studio 汉化教程]Reminders实验:第一部分(续)
  5. 全网最通俗易懂的「插屏广告」接入方法
  6. 大家好,我是浪啦啦啦啦啦!
  7. 什么是UI(UI百科)
  8. 高通平台SPI配置方法
  9. 固态硬盘是什么接口_5分钟教会你怎么区分M.2固态硬盘接口和协议
  10. 软件测试之App测试-硬件环境测试