网工干货知识

超全学习笔记
当前位置:首页 > 干货知识

应用层中的文件传输协议(FTP)

更新时间:2026年03月27日   作者:spoto   标签(Tag):

FTP(文件传输协议)是最早出现且被广泛使用的互联网上文件传输方式之一。它的工作原理是……应用层符合OSI模型的要求,能够确保文件在双方之间顺利交换。客户/用户以及一个服务器即使这两种系统使用不同的操作系统、文件结构或字符集,也是如此。

FTP是专门为……而设计的。文件处理与HTTP等协议不同,HTTP主要用于传输网页内容。而该协议的专用架构使得其能够可靠且高效地传输文本文件、二进制文件、图像以及其他类型的数据。

FTP支持多种传输模式:

  • ASCII模式– 用于纯文本文件,其中每个字符都使用标准的NVT-ASCII编码方式进行编码。
  • EBCDIC模式– 适用于使用EBCDIC字符编码的系统。
  • 图像(二进制)模式这是一种用于传输二进制数据的默认方式,比如程序、媒体文件以及压缩后的档案等,而无需进行任何修改。

简单来说,FTP提供了一种稳定且可靠的方式来在两种不同的系统之间上传、下载或管理文件。无论这些系统的底层结构有何不同,FTP都能发挥其重要作用,因此它是数据传输领域中的核心工具之一。

文件传输协议

那个文件传输协议(FTP)它被广泛用于网络的应用层。它在应用层进行工作,确保文件能够安全地被发送和接收。

FTP的类型

服务器和客户端通过不同的方式来实现FTP文件传输。下面列出了其中的一些方式:

  • 匿名FTP:在一些网站上,匿名FTP功能被启用了。这些网站的文件可以供公众访问。用户无需输入用户名或密码即可访问这些文件。默认情况下,用户名被设置为“anonymous”,而密码则被设置为“guest”。不过,用户的访问权限非常有限。例如,用户可以复制文件,但无法浏览目录。
  • 密码保护的FTP:这种FTP方式与之前的方式类似,不过其区别在于使用了用户名和密码作为认证手段。
  • FTP Secure (FTPS):它也被称为FTP安全套接层(FTP SSL)。这是一种更安全的FTP数据传输方式。每当建立FTP连接时,都会启用传输层安全协议(TLS)。
  • 基于显式SSL/TLS协议的FTP传输方式(FTPES):FTPES通过将FTP连接从端口21升级为加密连接,从而提供帮助。
  • 安全FTP(SFTP):SFTP并非一种FTP协议,而属于安全外壳协议的子集。因为它是在端口22上运行的。

FTP非常有用。

FTP特别适用于以下情况:

  • 传输大文件:FTP能够一次性传输大文件,因此适用于网站托管、服务器备份或大量文件的共享等场景。
  • 远程文件管理:远程服务器上的文件可以根据用户的意愿进行上传、下载、删除、重命名或复制等操作。
  • 自动化文件传输:FTP是一种非常适合用于执行文件传输的协议,它适用于各种预定义的脚本和应用程序。
  • 访问公共文件:匿名FTP意味着,无论身份如何,任何人都可以下载某些文件,而无需任何权限。

如何使用FTP?

要使用FTP,请按照以下步骤操作:

  • 连接到FTP服务器:可以通过FTP客户端或命令行界面,使用服务器地址、用户名和密码来连接到该服务器。对于匿名访问来说,可能不需要输入用户名和密码。
  • 导航目录:其中一些命令包括 `ls`,它用于列出目录;还有 `cd`,它用于切换目录。
  • 传输文件:文件传输可以通过使用诸如“get”这样的命令来完成,用于下载文件;而“put”则用于上传文件。
  • 管理文件:可以执行诸如删除、重命名以及复制文件等操作。
  • 关闭连接:当文件传输完成后,可以通过发送“bye”或“quit”命令来终止连接。

FTP是如何工作的呢?

FTP是一种客户端-服务器协议,它拥有两个通信通道:一个是用于控制对话的命令通道,另一个是用于传输文件内容的数据通道。

以下是关于FTP运作的详细说明:

  • 用户必须先登录到FTP服务器。不过,也有一些服务器允许用户在无需登录的情况下访问其内容,这种服务被称为匿名FTP。
  • 客户端可以在请求下载文件时,与服务器开始对话。
  • 用户可以在服务器上执行各种功能,比如上传文件、删除文件、重命名文件、复制文件等。

FTP可以在两种模式下运行:主动模式和被动模式。更多相关信息,请参阅相关文档。主动式FTP与被动式FTP之间的区别.

FTP中的连接类型

  • 控制连接
  • 数据连接

控制连接

在发送控制信息时,例如用户身份识别、密码、用于更改远程目录的命令、以及用于检索和存储文件的命令等,FTP都会使用控制连接来进行通信。控制连接的端口号为21。

数据连接

在发送实际文件时,FTP会使用数据连接。数据连接的端口号为20。
FTP在传输控制信息时,是通过独立的控制连接来进行的。而某些协议则会将请求和响应头信息以及数据都通过同一个TCP连接来传输。因此,这类协议被归类为在带内传输控制信息。HTTP也是如此。SMTP这些都是这样的例子。

FTP会话

当客户端和服务器之间开始FTP会话时,客户端会发起控制操作。TCP与服务器端的连接。客户端通过这种方式发送控制信息。当服务器接收到这些信息后,就会与客户端建立数据连接。不过,这种控制连接在整个用户会话期间都会保持激活状态。众所周知,HTTP是一种无状态的协议。而FTP则需要在整个会话过程中维护用户的状态信息。

FTP客户端

FTP的工作原理是:客户端-服务器模型FTP客户端是一种运行在用户计算机上的程序,它使得用户能够与远程计算机进行通信,并获取文件。它包含一系列命令,这些命令用于建立两台主机之间的连接,从而实现文件的传输,之后再关闭该连接。

其中一些命令包括:

获取文件名(从服务器上获取该文件)

获取文件名(从服务器中检索多个文件)

列出服务器当前目录中可用的文件。

此外,还有一些内置的FTP程序,这些程序可以简化文件传输的过程,同时也不需要用户记住复杂的命令。

FTP数据类型

文件的类型决定了该文件的整体表现形式,因此,这是关于该文件的第一条重要信息。FTP标准规定了以下四类数据:

  • ASCII:这是一种ASCII文本文件格式,其中每一行都用上述类型的行结束标记来表示。
  • EBCDIC:对于使用 IBM 的 EBCDIC 字符集的文件来说,这种类型在概念上与 ASCII 是相同的。
  • 图片:这就是我之前提到的“黑盒”模式。该文件没有固定的内部结构,数据是以一个字节为单位进行传输的,且不会经过任何处理。
  • 当地:包含以逻辑字节为单位的数据的文件,其比特数不等于8时,也可以使用这种数据类型来处理这些文件。

FTP回复

一些FTP回复如下:

  • 200 – 命令已下达,请确认。
  • 530 – 未登录。
  • 331 – 用户名没问题,不过还需要一个密码。
  • 221 – 服务关闭控制连接。
  • 551 – 请求的操作失败:页面类型未知。
  • 502 – 该命令未被执行。
  • 503 – 命令的序列顺序不正确。
  • 504 – 该参数对应的命令未被实现。

FTP的特性/特点

  • FTP使用TCP作为传输层协议。
  • 它适用于简单的文件传输,比如在系统启动过程中进行的文件传输。
  • 在传输过程中出现的错误(如数据包丢失、校验和错误等),必须由TFTP服务器来处理。
  • 它仅使用一个连接,而这个连接的端口就是众所周知的69号端口。
  • TFTP它采用了一种简单的锁步协议(即每个数据包都需要被确认)。因此,其吞吐量受到了限制。

FTP的安全问题

  • 由于FTP并不适合用于安全传输数据,因此信息无法通过安全的隧道进行传输。因此,这里没有使用加密技术。如果黑客能够截获FTP传输的数据,他们就不需要花费时间去处理加密问题,从而可以轻松访问或篡改这些数据。
  • 即使使用FTP云存储方式,如果服务提供商的系统受到攻击,数据仍然可能被截获或被滥用。
  • 因此,通过FTP传输的数据成为了各种攻击的目标,比如欺骗攻击、嗅探攻击、暴力破解等。这些攻击的响应速度相对较慢。黑客可以分析FTP传输的数据,试图利用其中的漏洞来实施攻击。
  • FTP使用明文密码作为认证方式,这些密码并未经过加密处理,这其实是一种严重的安全漏洞。换句话说,“Jerry1992”这个密码实际上就是“Jerry1992”本身。真正的密码则通过更安全的算法来隐藏起来。因此,虽然“Jerry1992”看起来像“Jerry1992”,但实际上它可能是“dj18387saksng8937d9d8d7s6a8d89”这样的字符串。由于FTP无法保护这类密码,因此恶意攻击者很容易破解这些密码。

什么是FTP端口?

FTP通过两个端口来运行:

  • 端口21:如前所述,这些命令就是在那里下达的。
  • 端口20:这是用于数据连接的特殊端口,文件的实际传输就在这个端口上进行。

如何更改FTP端口号

要更改默认的FTP端口号,请按照以下步骤操作:

  • 访问服务器配置:请确保您的FTP服务器的控制面板与所使用的FTP服务器配置文件能够良好地连接在一起。
  • 修改端口号:从配置文件中查看可能的端口设置。可以修改控制端口,默认值为21,而数据端口则默认为20。
  • 重新启动FTP服务:最后,在保存了您的更改之后,您需要停止并重新启动FTP服务,这样新的端口设置才能生效。
  • 更新客户端设置:请确保,所有与服务器连接的FTP客户端都收到了关于新端口号的信息。

FTP的优势

  • 文件共享也是FTP所具有的优势之一。在两台机器之间共享文件时,可以通过网络来实现这一点。
  • 速度正是FTP的主要优势之一。
  • 因为我们不需要完成所有的操作来获取整个文件,所以这种方式更为高效。
  • 使用用户名和密码后,我们就可以登录到FTP服务器了。这样一来,FTP方式可能会被认为更加安全。
  • 我们可以通过FTP来来回送文件。假设你是公司经理,你需要向所有员工提供信息,而所有员工都在同一个服务器上回复信息。

FTP的缺点

  • 文件大小限制是FTP系统的缺点之一,目前只能传输2GB大小的文件。
  • FTP并不支持使用多个接收者来接收文件的情况。
  • FTP并不对数据进行加密处理,这是FTP最大的缺点之一。
  • FTP是一种不安全的传输方式,因为需要使用用户名和密码来登录。虽然这种方式相对安全一些,但黑客仍然有可能对其进行攻击。

FTP与SFTP之间的区别

FTP

SFTP

它指的是文件传输协议。

它指的是安全文件传输协议。

在FTP中,无法提供安全通道来在主机之间传输文件。

在SFTP中,提供了安全的通道,用于在不同主机之间传输文件。

它通常运行在端口号21上。

它通常使用端口号22进行通信。

在发送之前,它不会对数据进行加密处理。

在发送之前,它会对数据进行加密处理。

这样,文件的上传和下载就完全不受任何安全限制了。

通过使用这种方式,可以确保数据的完全安全性。SSH密钥.

FTP安全面临的挑战

FTP的设计并未考虑安全性问题,因此存在许多漏洞。

  • 缺乏加密功能:这是因为,诸如用户名和密码这样的数据在传输过程中并未经过加密处理,因此很容易受到各种攻击的威胁。
  • 容易受到攻击的漏洞:FTP传输容易受到诸如欺骗攻击、窃听等攻击的威胁。暴力手段这些攻击方式属于缓慢型的攻击手段。他们指出,这些数据很容易被截获并篡改。黑客 .
  • 纯文本密码:不幸的是,FTP客户端认证使用的是非加密的密码,这使得这些密码容易受到黑客攻击。
              马上抢免费试听资格
意向课程:*必选
姓名:*必填
联系方式:*必填
QQ:
思博SPOTO在线咨询

相关资讯

即刻预约

免费试听-咨询课程-获取免费资料