FTP服务器是什么?FTP服务器工作模式有哪些?有很多人对于FTP服务器不太了解,对于FTP服务器的含义和作用都不清楚。下面我们就FTP服务器的含义以及FTP服务器的工作模式进行了解。
一、ftp服务器。
FTP服务器(FiletransferProtocolserver)是在互联网上提供文件和访问服务的计算机。FTP是FiletransferProtocol(文件传输协议)。顾名思义,是专门用来传输文件的协议。简单来说,支持FTP协议的服务器就是FTP服务器。一般来说,用户的主要目的是实现,这是信息共享中非常重要的内容之一。FTP也和大多数一样。用户通过支持FTP协议的程序连接到远程FTP服务器程序。用户通过程序向服务器程序发出命令,执行用户发出的命令,并返回执行结果。例如,用户发出一个命令,要求服务器将文件副本发送给用户,服务器将响应该命令,并将指定文件发送给用户的机器。该程序代表用户接收并存储在用户目录中的文件。
FTP仅基于TCP,不支持UDP。不同的是,FTP使用两个端口,一个数据端口和一个命令端口(也称为控制端口)。一般来说,这两个端口是21(命令端口)和20(数据端口)。但不同的FTP工作方式,数据端口并不总是20。这是主动FTP和被动FTP最大的区别。主要有两种工作模式:
主动ftp。
即Port模式,客户端从任何非特权端口N(N>1024)连接到FTP服务器的命令端口,即21端口。然后客户端开始。
监控端口N+1,并将FTP命令“portN+1”发送到FTP服务器。然后服务器将自己的数据端口(20)连接到客户端指定的数据端口(N+1)。
FTP服务器前面的防火墙必须允许以下通信支持主动FTP:
(1)从任何超过1024的端口到FTP服务器的21端口。(客户端初始化连接)
(2)FTP服务器的21端口大于1024端口。(服务器响应客户端控制端口)
(3)FTP服务器的20端口大于1024端口。(服务器端的初始化数据连接到客户端的数据端口)
(4)从1024端口到FTP服务器的20端口(客户端将ACK的数据端口发送ACK响应)
2.被动ftp。
人们开发了一种不同的FTP连接方式,以解决从服务器到客户的连接问题。当客户端通知服务器处于被动模式时,这就是所谓的被动模式或PASV。
在被动FTP中,命令连接和数据连接由客户端启动,解决了从服务器到客户端数据端口连接被防火墙过滤掉的问题。
打开FTP连接时,客户端打开两个非特权本地端口(N>1024和N+1)。第一个端口连接服务器的21端口,但与主动FTP不同,客户不会提交PORT命令,允许服务器来回连接其数据端口,而是提交PASV命令。因此,服务器将打开任何非特权端口(P>1024),并向客户发送PORTP命令。然后客户端发起从本地端口N+1到服务器端口P的连接来传输数据。
对于服务器端的防火墙,FTP必须允许信支持被动FTP:
(1)从任何超过1024的端口到服务器的21端口(客户端初始化连接)
(2)服务器的21端口到任何超过1024的端口(服务器响应客户端控制端口的连接)
(3)从1024端口到服务器的1024端口(客户端的初始化数据连接到服务器指定的任何端口)
(4)从1024端口到远程1024端口(服务器将ACK响应和数据发送到客户端的数据端口)