FTP是什么?
早期三大网络应用之一:ftp(40年)、http、mail
ftp file transfer protocol
文件传输协议
FTP服务概述
C/S模型
客户端-服务器
FTP采用双TCP连接方式
控制连接-使用TCP端口号21
用于在FTP客户端和FTP服务器之间传输FTP控制命令及命令执行信息。控制连接在整个FTP会话期间一直保持打开。
数据连接-使用TCP端口号20
用于传输数据,包括数据上传、下载、文件列表发送等。数据传输结束后数据连接将终止。
主动方式建立连接过程
FTP主动数据传输方式
主动方式也称为PORT方式,是FTP协议最初定义的数据传输连接方式,主要特点是:
FTP客户端通过向FTP服务器发送PORT命令,告诉服务器该客户端用于传输数据的临时端口号
当需要传送数据时,服务器通过TCP端口号20与客户端的临时端口建立数据传输通道,完成数据传输
在建立数据连接的过程中,由服务器主动发起连接,因此被称为主动方式。
被动方式建立连接过程
FTP被动数据传输方式
被动方式也称为PASV方式,被动方式的主要特点是:
FTP客户端通过向FTP服务器发送PASV命令,告诉服务器进入被动方式。服务器选择临时端口号并告知客户端
当需要传送数据时,客户端主动与服务器的临时端口号建立数据传输通道,完成数据传输。
在整个过程中,由于服务器总是被动接收客户端的数据连接,因此被称为被动方式。
文本模式和二进制模式
文件传输器使用ASCII字符,并由回车键和换行符分开,而二进制不用转换或格式化就可传输字符,二进制模式比文本模式更快,并且可以传输所有ASCII值,所以系统管理员一般将FTP设置成二进制模式。
二进制模式用来传送可执行文件,压缩文件,和图片文件。如果你用ASCII模式传,会显示一堆乱码,你必须重新使用BINARY模式传。用HTML和文本编写的文件必须用ASCII模式上传,用BINARY模式上传会破坏文件,导致文件执行出错。
FTP用户的类型
匿名用户:anonymous或ftp
本地用户:
帐号名称、密码等信息保存在passwd、shadow文件中
虚拟用户:
使用独立的帐号/密码数据文件
user_list zhangsan 123456 /var/pub