3.1. FTP简介
3.1.1. FTP简述
- FTP
文件传输协议(英文:File Transfer Protocol,缩写:FTP)是用于在网络上进行文件传输的一套标准协议,使用客户/服务器模式。 它属于网络传输协议的应用层。
- 文件传送(file transfer)和文件访问(file access)之间的区别在于:
前者由FTP提供,后者由如NFS等应用系统提供。参考文献 RFC 959 定义了此规范。
- FTP历史
文件传输协议的原始规范于1971年4月16日发布为 RFC 114 。直到1980年,FTP运行在TCP/IP的前身NCP上。 该协议后来被TCP/IP版本, RFC 765 (1980年6月)和 RFC 959 (1985年10月)(当前规范)所取代。 RFC 959 提出了若干标准修改, 例如 RFC 1579 (1994年2月)启用防火墙FTP(被动模式), RFC 2228 (1997年6月) 提出安全扩展, RFC 2428 (1998年9月)增加了对IPv6的支持,并定义了一种新型的被动模式。
- FTP服务端口
FTP服务一般运行在20和21两个端口。
提示
端口20用于在客户端和服务器之间传输数据流,而端口21用于传输控制流
运行FTP服务的许多站点都开放匿名服务,在这种设置下,用户不需要帐号就可以登录服务器,默认情况下,匿名用户的用户名是:“anonymous”。这个帐号不需要密码,虽然通常要求输入用户的邮件地址作为认证密码,但这只是一些细节或者此邮件地址根本不被确定,而是依赖于FTP服务器的配置情况。
3.1.2. FTP技术
- FTP有两种使用模式:
主动模式
被动模式
- 主动模式:
要求客户端和服务器端同时打开并且监听一个端口以创建连接。在这种情况下,客户端由于安装了防火墙会产生一些问题。
- 被动模式:
被动模式只要求服务器端产生一个监听相应端口的进程,这样就可以绕过客户端安装了防火墙的问题。
- FTP访问
大多数最新的网页浏览器和文件管理器都能和FTP服务器创建连接
ftp://<服务器地址>(例如,ftp://ftp.gimp.org )。 是否提供密码是可选择的,如果有密码,则形如ftp://<login>:<password>@<ftpserveraddress>。
注意
大部分网页浏览器要求使用被动FTP模式,然而并不是所有的FTP服务器都支持被动模式
3.1.3. FTP服务软件
FTP是一种技术协议。我们在实际中应用的是根据这些标准协议开发的应用软件。
日常中常用的FTP服务器软件包括:
- 服务端软件:
vsftpd(Very Secure ftp Daemon)
wu-ftpd
proftpd
FileZilla server
Serv-U
PureFTPd
- 客户端:
- 命令行的客户端:
ftp
lftp
- 图形客户端:
gftpd
FlashFXP
Cuteftp
FileZilla