vsftpd 是“very secure FTP daemon”的缩写,是一个完全免费的、开放源代码的ftp服务器软件。特点
是:非常高的安全性需求、带宽限制、良好的可伸缩性等。

vsftpd使用ftp协议,该协议属于应用层协议。它是典型的c/s架构,ftp服务端用来存储文件,ftp客户端
可以通过ftp协议连接服务端实现上传和下载资源。
ftp使用tcp的21端口进行命令传输,然后用tcp 的20端口进行数据传输(主动模式)。默认是被动模
式。

一、安装部署
vsftpd: 为服务端软件
lftp: 为客户端工具,推荐使用lftp

yum install vsftpd lftp -y

启动服务

systemctl start vsftpd
[root@localhost ~]# lftp 192.168.2.103
lftp 192.168.2.103:~> 

二、配置VSFTPD文件
默认配置只能进行文件的读取和下载,不能进行写入和上传文件

1.1匿名用户访问配置
在/etc/vsftpd/vsftpd.conf配置文件中加入如下代码:

允许匿名用户上传文件;
允许匿名用户创建目录;
允许匿名用户其他写入权限。

anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES

1.2、修改/var/ftp目录有写入权限,使用如下chown, 设置命令如下:

chown  -R ftp  /var/ftp/pub/
systemctl restart vsftpd

此止,匿名用户可以上传下载

通过Windows资源客户端验证

2.1、本地账户访问配置

在/etc/vsftpd/vsftpd.conf配置文件编辑:
关闭匿名用户

anonymous_enable=NO

2.2、新增本地账户

useradd   jfedu1
echo 123456|passwd --stdin  jfedu1

通过Windows资源客户端验证,使用jfedu01、用户登录FTP服务器,即可上传文件、删除文件、下载文件,jfedu01系统用户上传文件的家目录在

3.1、虚似用户访问配置
在/etc/vsftpd/vsftpd.conf配置文件编辑:
关闭匿名用户
关闭本地用户

anonymous_enable=NO
local_enable=NO

3.2、安装Vsftpd虚拟用户需用到的软件及认证模块:

yum  install  pam*  libdb-utils  libdb*  --skip-broken  -y

3.3、创建虚拟用户临时文件/etc/vsftpd/ftpusers.txt,新建虚拟用户和密码,其中jfedu001、jfedu002
为虚拟用户名,123456为密码,如果有多个用户,依次格式填写即可。

3.4、生成Vsftpd虚拟用户数据库认证文件,设置权限700

db_load  -T  -t  hash  -f  /etc/vsftpd/ftpusers.txt  /etc/vsftpd/vsftpd_login.db
chmod  700  /etc/vsftpd/vsftpd_login.db

3.5、配置PAM认证文件,清空/etc/pam.d/vsftpd并在行首加入如下两行

auth      required        pam_userdb.so   db=/etc/vsftpd/vsftpd_login
account   required        pam_userdb.so   db=/etc/vsftpd/vsftpd_login

3.6、所有Vsftpd虚拟用户需要映射到一个系统用户,该系统用户不需要密码,也不需要登录,主要用于虚拟用户映射使用,创建命令如下:

useradd    -s   /sbin/nologin    ftpuser

3.7、在/etc/vsftpd/vsftpd.com 加入以下代码

#启用虚拟用户;
#映射虚拟用户至系统用户ftpuser;
#设置虚拟用户配置文件所在的目录;
#虚拟用户使用与本地用户相同的权限。

pam_service_name=vsftpd
guest_enable=YES
guest_username=ftpuser
user_config_dir=/etc/vsftpd/vsftpd_user_conf
virtual_use_local_privs=YES

3.8、至此,所有虚拟用户共同基于/home/ftpuser主目录实现文件上传与下载,可以在/etc/vsftpd/vsftpd_user_conf目录创建虚拟用户各自的配置文件,创建虚拟用户配置文件

mkdir  -p    /etc/vsftpd/vsftpd_user_conf/

创建创建私有的虚拟目录代码如下:
/etc/vsftpd/vsftpd_user_conf/jfedu001对应虚似用户名jfedu001
/etc/vsftpd/vsftpd_user_conf/jfedu002 对应虚似用户名jfedu002

vim /etc/vsftpd/vsftpd_user_conf/jfedu001

配置文件内容
#jfedu001虚拟用户配置文件路径;
#允许登陆用户有写权限;
#允许匿名用户下载,然后读取文件;
#允许匿名用户上传文件权限,只有在write_enable=YES时该参数才生效;
#允许匿名用户创建目录,只有在write_enable=YES时该参数才生效;
#允许匿名用户其他权限,例如删除、重命名等。

local_root=/home/ftpuser/jfedu001
write_enable=YES
anon_world_readable_only=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES

创建虚拟用户各自虚拟目录

mkdir -p /home/ftpuser/jfedu001
chown -R ftpuser:ftpuser /home/ftpuser

重启Vsftpd服务,通过Windows客户端资源管理器登录Vsftpd服务端

Ftp文件服务器搭建相关推荐

  1. 阿里云服务器ECS 第一篇:FTP文件服务器搭建

    < 第一篇:FTP文件服务器搭建 > 目前打算将项目部署到阿里云服务器上,并配置系统运行环境,搭建FTP服务器是系统部署的第一步,为了后期文件传输方便快捷,所以从这里开始!!! 关于FTP ...

  2. suse ftp文件服务器搭建,SUSE下FTP服务器搭建

    FTP(File Transfer Protocol),是TCP/IP网络上两台计算机传送文件的协议,是在TCP/IP网络和Internet上最早使用的协议之一,属于网络协议组的应 用层.FTP客户机 ...

  3. 在PC上File Server (FTP)文件服务器搭建

    一.搭建环境 1.笔记本电脑 2.操作系统:Win7 X64 二.搭建步骤 1.安装IIS,安装步骤如下: (1).打开"控制面板"--->"程序" (2 ...

  4. Ubuntu 搭建FTP文件服务器

    最近公司项目中需要搭建FTP文件服务器,主要是用来解决大文件上传问题. 注:以下命令都是在已经关闭防火墙的前提下进行的 1.安装vsftpd $ sudo apt install vsftpd 2.开 ...

  5. Centos7 搭建FTP文件服务器

    最近公司项目中需要搭建FTP文件服务器,主要是用来解决大文件上传问题. 注:以下命令都是在已经关闭防火墙的前提下进行的 1.安装vsftpd $ yum install vsftpd -y 2.开启服 ...

  6. iis7 文件服务器搭建,iis7 ftp服务器搭建

    iis7 ftp服务器搭建 内容精选 换一换 安装MySQL本文档以"CentOS 6.5 64bit(40GB)"操作系统为例,对应MySQL版本为5.1.73.CentOS 7 ...

  7. WIN10家庭版搭建FTP文件服务器

    1.创建用户 和专业版本不一样的是,WIN10家庭版中是没有用户和组的,所以是直接在控制面板-用户账号中创建,具体的创建方式如下: 2.启动WINDOWS功能 3.在本地电脑上创建一个文件夹,用于FT ...

  8. 17、【 商品管理模块开发】——后台商品图片的springmvc和富文本上传以及ftp文件服务器的开发...

    1.FTP文件服务器的搭建: 软件下载:ftpserver: image.png 浏览器访问:ftp://127.0.0.1/ image.png 点击任意一个文件,就可以看到我们图片啦,前提是前面指 ...

  9. 文件服务器 说明,文件服务器搭建说明.pdf

    文件共享服务器搭建 责任人 姜 源 起讫时间 2010 11 15 至 2010 12 19 编号 JY001 0 目录目录 一 确定实现方案 1 二 方案实现方法 4 三 参考资料 12 1 文件服 ...

最新文章

  1. 精选 Github 近期13款开源工具包!(附数据集、链接)
  2. 如何表示int的最大值
  3. typeof和instanceof 运算符
  4. 加你用移动端数据爬取
  5. php对二维数据进行排序
  6. 常见设计模式 (python代码实现)
  7. 剑指Offer05. 替换空格
  8. ajax jsp模糊查询源码,Ajax动态执行模糊查询功能
  9. 【2019牛客暑期多校训练营(第一场) - A】Equivalent Prefixes(单调栈,tricks)
  10. 【Mac + Appium + Python3.6学习(四)】之常用的IOS自动化测试API总结
  11. OK335xS psplash Screen 移植
  12. macbook电池用什么软件测试,Wattagio Mac_Wattagio For Mac(电池检测软件) v1.1苹果电脑版 - 121苹果网...
  13. 转载 GIS的下个十年(Cary Mann, vice president, Bentley)
  14. oracle、mysql创建用户赋DBA权限
  15. 登康口腔冲刺上市:销售费用远高于研发,旗下品牌包括冷酸灵等
  16. Linuux-alsa-左右声道处理
  17. python 压缩图片为指定大小
  18. python基于pingouin包进行统计分析:使用tost函数执行配对的双单侧检验(TOST)、以dataframe的形式输出分析结果(包含p值、自由度、bound等)
  19. 关于干货集中营的一个开源App
  20. 一件登录facebook_Facebook抵制抵制是防火的,那是一件好事

热门文章

  1. CF 379D NewYearLetter [dp+暴力]
  2. Win10电脑开机PIN码怎么取消?
  3. 创龙Xilinx Zynq-7000系列SoC高性能处理器开发板的按键、串口
  4. 第一节.软件测试概述
  5. 利用matlab实现一维搜索算法
  6. mysql的访问端口是什么意思_数据库端口是什么端口号
  7. 集 成 运 算 同 相放大器和反 向放大器的选择
  8. HTML5动态加载资源方式,动态加载JavaScript文件的3种方式
  9. 外贸专用企业邮箱品牌——TOM企业邮箱
  10. jsp逐行打印mysql查询表格,jsp页面怎么写循环语句显示数据库中所有数据到网页表格中...