文章目录

  • 一、FTP概述
  • 二、FTP服务的两种模式
  • 1.Standard模式
  • 2.Passive模式
  • 三、搭建和配置FTP服务
  • 3.1准备工作
  • 3.1.1.实验环境
  • 3.1.2.关闭防火墙及核心防护
  • 3.1.3.安装vsftpd软件
  • 3.2匿名用户访问
  • 3.2.1修改配置文件
  • 3.2.2 测试
  • 3.3本地用户访问
  • 3.3.1修改配置文件
  • 3.3.2测试
  • 总结



一、FTP概述

FTP(File Transfer Protocal,文本传输协议)时典型的C/S架构的应用层协议,需要由服务端软件、客户端软件两个部分共同实现文件传输功能。FTP客户端和服务端之间的连接是可靠的,面向连接的,为数据的传输提供了可靠的保证。
TCP协议:20,21端口


二、FTP服务的两种模式

FTP是一种文件传输协议,它支持两种模式,一种方式叫做Standard(也就是Active,主动),一种是Passive(也就是PASV,被动)。Standard模式是FTP的客户端发送PORT命令到FTP Server。Passive模式是FTP的客户端发送PASV命令到FTP Server

1.Standard模式

FTP客户端首先和FTP Server的TCP21端口建立连接,通过这个通道发送命令,客户端需要接收数据的时候在这个通道上发送PORT命令。PORT命令包含了客户端用什么端口接收数据。在传送数据的时候,服务端通过自己的TCP20端口发送数据。FTP Server必须和客户端建立一个新的连接用来传送数据。

2.Passive模式

在建立控制通道的时候和Standard模式类似,当客户端通过这个通道发送PASV命令的时候,FTP Server打开一个位于1024和5000之间的随机端口并且通知客户端在这个端口上传送数据的请求,然后FTP Server将通过这个端口进行数据的传送,这个时候FTP Server不再需要建立一个新的和客户端之间的连接


三、搭建和配置FTP服务

3.1准备工作

3.1.1.实验环境

服务器:CentOS7系统 ip:192.168.226.131
客户端:Win10系统 ip:192.168.226.160

3.1.2.关闭防火墙及核心防护

关闭防火墙及核心防护

systemctl stop firewalld       #关闭防火墙
systemctl disable firewalld     #开机自关闭防火墙
setenforce 0                   #临时关闭增强型安全功能

3.1.3.安装vsftpd软件

Linux系统中,是vsftpd提供ftp的服务

ftp容器化部署 ftp服务端配置_网络


开启vsftp服务并查看端口

ftp容器化部署 ftp服务端配置_网络_02


ftp容器化部署 ftp服务端配置_网络_03


做好备份文件,以防出现问题

ftp容器化部署 ftp服务端配置_客户端_04

3.2匿名用户访问

3.2.1修改配置文件

编辑匿名用户访问的配置文件

ftp容器化部署 ftp服务端配置_网络_05


ftp容器化部署 ftp服务端配置_网络_06


给与访问目录的最大权限

ftp容器化部署 ftp服务端配置_网络_07

3.2.2 测试

在/var/ftp/pub下创建一个文件goodman

ftp容器化部署 ftp服务端配置_网络_08


打开win10命令行,进入到192.168.226.131,pub目录下出现goodman文件

ftp容器化部署 ftp服务端配置_网络_09


下载文件

ftp容器化部署 ftp服务端配置_网络_10


会将文件下载到本地

ftp容器化部署 ftp服务端配置_服务器_11


查看文件内容

ftp容器化部署 ftp服务端配置_linux_12


新建文件并上传文件

ftp容器化部署 ftp服务端配置_linux_13


ftp容器化部署 ftp服务端配置_客户端_14


ftp容器化部署 ftp服务端配置_linux_15


测试成功

3.3本地用户访问

3.3.1修改配置文件

编辑本地用户访问的配置文件

ftp容器化部署 ftp服务端配置_网络_16


ftp容器化部署 ftp服务端配置_客户端_17


ftp容器化部署 ftp服务端配置_ftp容器化部署_18


ftp容器化部署 ftp服务端配置_ftp容器化部署_19


给与访问目录的最大权限

ftp容器化部署 ftp服务端配置_ftp容器化部署_20

3.3.2测试

创建ngs.txt文件

ftp容器化部署 ftp服务端配置_服务器_21


使用zhangsan用户连接

ftp容器化部署 ftp服务端配置_服务器_22


下载ngs.txt

ftp容器化部署 ftp服务端配置_ftp容器化部署_23


创建zhangsan文件上传

ftp容器化部署 ftp服务端配置_客户端_24


ftp容器化部署 ftp服务端配置_客户端_25


/var/www/ngs/中会有zhangsan.txt文件

ftp容器化部署 ftp服务端配置_linux_26


总结

FTP的工作原理
VSFTPD的两种工作模式(主动与被动的区别)
FTP的端口使用情况
FTP服务的配置与使用
如何实现匿名用户登录与本地用户登录