FTP 服务器工作及其好处
FTP 是一组标准协议,允许互连或联网的计算机通过 Internet 传输文件和通信。
FTP服务器基本上是一台在互联网上提供访问服务和文件存储的计算机,它处理联网计算机之间的所有数据传输。 FTP 服务器等待客户端连接到它,它使用 FTP 协议命令完成所有任务,例如上传、列出目录或下载。
FTP 基于客户端/服务器架构。用户是支持 FTP 协议的客户端,通过它可以连接到远程主机上的 FTP 服务器。客户端可以发出命令,以便远程服务器执行,主机服务器在执行命令后将执行结果返回给客户端。例如,用户提供命令并要求服务器转发文件。服务器将回复请求并将文件发送给客户端。之后,用户可以将文件放在工作目录中。这些类型的进程由 FTP 服务器执行。
FTP服务器的工作:
FTP服务是基于TCP的协议,即文件传输协议。默认情况下,它使用端口 20(数据端口)和端口 21(命令端口)。用户向网络中的服务器发送服务请求。之后,服务器接收到请求,响应用户的请求,为用户提供所请求的文件传输服务。 FTP 使用连续连接通信方法来保持长控制连接的运行。根据连接模式的类型,数据端口的数量可能会有所不同。
FTP中的连接类型:
通常,在进行文件传输的会话中,FTP 使用两种不同类型的连接,即数据连接和控制连接。
- 控制连接:控制连接用于在用户和服务器之间发送命令。它是主要连接,它使用端口 21。
- 数据连接:数据连接仅用于传输数据。它在客户端和服务器的 DTP(数据传输过程)之间建立连接,并使用端口 20。
连接模式的类型:
FTP 服务器可以支持主动模式、被动模式或两种模式。
- 主动模式:在这种模式下,用户打开一个端口并在服务器主动连接到该端口时进行侦听。在这里,客户端可以从任何随机端口进行连接。
- 被动模式:在这种模式下,服务器打开一个端口,它被动地监听它,用户也被动地连接到它。被动模式默认用作安全措施。当用户无法接收连接时,即在连接被防火墙阻止的情况下,可以使用被动模式。
与 FTP 服务器的通信:
用户可以通过 21 端口使用 telnet 程序与 FTP 服务器通信。
>telnet mkcbt.wrt.it 21
Trying 69.198.63.156…
Connected to mkcbt.wrt.it.
Escape character is ‘^]’.
220 ProFTPD server (EV) [69.198.63.156]
下一步是提供用户名和密码。
>USER mkcbt
331 password requires for mkcbt.
>PASS [REDACTED]
230 user mkcbt logged in
>PASV
227 entering passive mode (69,198,63,156,116,239).
>telnet mkcbt.wrt.it 29819
Trying 69.198.63.156…
Connected to mkcbt.wrt.it
Escape character is ‘^]’.
>LIST
150 Opening BINARY mode data connection for file list.
226 Transfer complete
drwxrwx--- 2 mkcbt 2048 0 Nov 2 15:12.
drwxrwx--- 2 mkcbt 2048 0 Nov 2 15:12.
-rw-rw---- 2 mkcbt 2048 5 Nov 2 12:52. xp_gif
-rw-rw---- 2 mkcbt 2048 5 Nov 2 13:12. xc_txt
-rw-rw---- 2 mkcbt 2048 5 Nov 2 13:52. xpc_vid
-rw-rw---- 2 mkcbt 2048 5 Nov 2 14:27. gmarker
-rw-rw---- 2 mkcbt 2048 5 Nov 2 16:24. test
如上所示,当客户端提供命令并传递响应时,FTP 服务器工作。
FTP 服务器的好处:
- FTP 服务器提供了一定程度的安全性。
- FTP 服务器为用户提供了一定程度的控制。
- FTP 服务器允许用户一次发送大文件。
- 它改善了工作流程。
- 它允许数据恢复。
- 它具有恢复功能,即即使在发生中断连接后也允许传输文件。
FTP服务器的缺点:
- 所有文件、密码和用户名都以未加密的文本形式发送。
- TLS 1.2 可能无法通过 HTTPS 工作,因为它并不总是受支持。
- 欺骗服务器以将数据发送到未经预谋的计算机或随机端口是可能的。