FTP网络共享文件传输协议,FTP客户端程序与服务器创建链接,从而双方能够进行文件的传输,FTP使用两个端口分别用于传输命令和传输数据。web
命令端口主要负责FTP命令的发送,当客户端向服务器端发送命令时,服务器端会响应相关信息,其中的返回码主要是用于判断命令是否被成功执行了。shell
数据传输主要用于显示目录列表和上传下载文件,一般分为主动模式和被动模式服务器
主动模式:客户端发送端口号N给服务器,并在N+1端口进行监听,服务端会使用数据端口(20)链接此端口进行文件的传输网络
被动模式:开启FTP链接时客户端打开两个任意本地端口(N>1024和N+1),第一个端口用于链接服务器的21端口进行命令的传输。服务器会开启任意一个端口(P>1024),返回例如"227 entering passive mode (127,0 ,0,1, 20 ,28)"。此数字前四个表示服务器地址,倒数第二个数字乘256+最后一个数字,则为服务器开放的端口,此时客户端利用N+1端口来链接此端口来进行数据的传输svg
Windows cmd下默认为主动模式,更改ftp为被动的方法:
ftp> quote PASV.net
Linux ftp命令下默认为被动模式,更改成主动的方法:
ftp> passivexml
USER:指定用户名blog
PASS:指定用户密码图片
SIZE:从服务器返回指定文件大小get
CWD:改变工做目录
PASV:进入被动模式,使服务器在数据端口监听
PORT:使服务器在数据端口监听,进入主动模式
RETR:下载文件
STOR:上传文件
QUIT:关闭与服务器的链接
使用xShell链接服务器(Ubuntu)