ftp.docx
- 文档编号:7651197
- 上传时间:2023-01-25
- 格式:DOCX
- 页数:14
- 大小:40.24KB
ftp.docx
《ftp.docx》由会员分享,可在线阅读,更多相关《ftp.docx(14页珍藏版)》请在冰豆网上搜索。
ftp
ftp
百科名片
FTP是FileTransferProtocol(文件传输协议)的英文简称,而中文简称为“文传协议”。
用于Internet上的控制文件的双向传输。
同时,它也是一个应用程序(Application)。
用户可以通过它把自己的PC机与世界各地所有运行FTP协议的服务器相连,访问服务器上的大量程序和信息。
FTP的主要作用,就是让用户连接上一个远程计算机(这些计算机上运行着FTP服务器程序)察看远程计算机有哪些文件,然后把文件从远程计算机上拷到本地计算机,或把本地计算机的文件送到远程计算机去。
目录[隐藏]
1工作原理举例说明
1文件传输协议
1服务器系统
1匿名ftp
1FTP的用户分类及权限归属Real帐户
1Guest用户
1Anonymous(匿名)用户
8UFTP客户端
1通过FTP传输文件的一般步骤命令提示
1FTP协议
1FTP和网页浏览器被动FTP模式
1ftp命令
1用途
1语法
1描述
发布子命令
子命令
示例
文件
FTP进入银行业的背景
1工作原理举例说明
1文件传输协议
1服务器系统
1匿名ftp
1FTP的用户分类及权限归属Real帐户
1Guest用户
1Anonymous(匿名)用户
8UFTP客户端
1通过FTP传输文件的一般步骤命令提示
1FTP协议
1FTP和网页浏览器被动FTP模式
1ftp命令
1用途
1语法
1描述
发布子命令
子命令
示例
文件
FTP进入银行业的背景
[编辑本段]工作原理
举例说明
以下载文件为例,当你启动FTP从远程计算机拷贝文件时实际上启动了两个程序:
一个本地机上的FTP客户程序,它向FTP服务器提出拷贝文件的请求。
另一个是启动在远程计算机的上的FTP服务器程序,它响应你的请求把你指定的文件传送到你的计算机中。
FTP采用“客户机/服务器”方式,用户端要在自己的本地计算机上安装FTP客户程序。
FTP客户程序有字符界面和图形界面两种。
字符界面的FTP的命令复杂、繁多。
图形界面的FTP客户程序,操作上要简洁方便的多。
文件传输协议
简单地说,支持FTP协议的服务器就是FTP服务器,下面介绍一下什么是FTP协议。
(文件传输协议) 一般来说,用互联网的首要目的就是实现信息共享,文件传输是信息共享非常重要的一个内容之一。
Internet上早期实现传输文件,并不是一件容易的事,我们知道Internet是一个非常复杂的计算机环境,有PC,有工作站,有MAC,有大型机,而连接在Internet上的计算机有上千万台,并且这些计算机可能运行不同的操作系统,有运行Unix的服务器,也有运行Dos、Windows的PC机和运行MacOS的苹果机等等,而各种操作系统之间的文件交流问题,需要建立一个统一的文件传输协议,这就是所谓的FTP。
基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议,这样用户就可以把自己的文件传送给别人,或者从其它的用户环境中获得文件。
服务器系统
与大多数Internet服务一样,FTP也是一个客户机/服务器系统。
用户通过一个支持FTP协议的客户机程序,连接到在远程主机上的FTP服务器程序。
用户通过客户机程序向服务器程序发出命令,服务器程序执行用户所发出的命令,并将执行的结果返回到客户机。
比如说,用户发出一条命令,要求服务器向用户传送某一个文件的一份拷贝,服务器会响应这条命令,将指定文件送至用户的机器上。
客户机程序代表用户接收到这个文件,将其存放在用户目录中。
在FTP的使用当中,用户经常遇到两个概念:
"下载"(Download)和"上传"(Upload)。
"下载"文件就是从远程主机拷贝文件至自己的计算机上;"上传"文件就是将文件从自己的计算机中拷贝至远程主机上。
用Internet语言来说,用户可通过客户机程序向(从)远程主机上传(下载)文件。
使用FTP时必须首先登录,在远程主机上获得相应的权限以后,方可下载或上传文件。
也就是说,要想同哪一台计算机传送文件,就必须具有哪一台计算机的适当授权。
换言之,除非有用户ID和口令,否则便无法传送文件。
这种情况违背了Internet的开放性,Internet上的FTP主机何止千万,不可能要求每个用户在每一台主机上都拥有帐号。
匿名FTP就是为解决这个问题而产生的。
匿名FTP是这样一种机制,用户可通过它连接到远程主机上,并从其下载文件,而无需成为其注册用户。
系统管理员建立了一个特殊的用户ID,名为anonymous,Internet上的任何人在任何地方都可使用该用户ID。
通过FTP程序连接匿名FTP主机的方式同连接普通FTP主机的方式差不多,只是在要求提供用户标识ID时必须输入anonymous,该用户ID的口令可以是任意的字符串。
习惯上,用自己的E-mail地址作为口令,使系统维护程序能够记录下来谁在存取这些文件。
值得注意的是,匿名FTP不适用于所有Internet主机,它只适用于那些提供了这项服务的主机。
当远程主机提供匿名FTP服务时,会指定某些目录向公众开放,允许匿名存取。
系统中的其余目录则处于隐匿状态。
作为一种安全措施,大多数匿名FTP主机都允许用户从其下载文件,而不允许用户向其上传文件,也就是说,用户可将匿名FTP主机上的所有文件全部拷贝到自己的机器上,但不能将自己机器上的任何一个文件拷贝至匿名FTP主机上。
即使有些匿名FTP主机确实允许用户上传文件,用户也只能将文件上传至某一指定上传目录中。
随后,系统管理员会去检查这些文件,他会将这些文件移至另一个公共下载目录中,供其他用户下载,利用这种方式,远程主机的用户得到了保护,避免了有人上传有问题的文件,如带病毒的文件。
作为一个Internet用户,可通过FTP在任何两台Internet主机之间拷贝文件。
但是,实际上大多数人只有一个Internet帐户,FTP主要用于下载公共文件,例如共享软件、各公司技术支持文件等。
Internet上有成千上万台匿名FTP主机,这些主机上存放着数不清的文件,供用户免费拷贝。
实际上,几乎所有类型的信息,所有类型的计算机程序都可以在Internet上找到。
这是Internet吸引我们的重要原因之一。
匿名ftp
匿名FTP使用户有机会存取到世界上最大的信息库,这个信息库是日积月累起来的,并且还在不断增长,永不关闭,涉及到几乎所有主题。
而且,这一切是免费的。
匿名FTP是Internet网上发布软件的常用方法。
Internet之所以能延续到今天,是因为人们使用通过标准协议提供标准服务的程序。
像这样的程序,有许多就是通过匿名FTP发布的,任何人都可以存取它们。
Internet中的有数目巨大的匿名FTP主机以及更多的文件,那么到底怎样才能知道某一特定文件位于哪个匿名FTP主机上的那个目录中呢?
这正是Archie服务器所要完成的工作。
Archie将自动在FTP主机中进行搜索,构造一个包含全部文件目录信息的数据库,使你可以直接找到所需文件的位置信息。
[编辑本段]FTP的用户分类及权限归属
Real帐户
这类用户是指在FTP服务上拥有帐号。
当这类用户登录FTP服务器的时候,其默认的主目录就是其帐号命名的目录。
但是,其还可以变更到其他目录中去。
如系统的主目录等等。
Guest用户
在FTP服务器中,我们往往会给不同的部门或者某个特定的用户设置一个帐户。
但是,这个账户有个特点,就是其只能够访问自己的主目录。
服务器通过这种方式来保障FTP服务上其他文件的安全性。
这类帐户,在Vsftpd软件中就叫做Guest用户。
拥有这类用户的帐户,只能够访问其主目录下的目录,而不得访问主目录以外的文件。
Anonymous(匿名)用户
这也是我们通常所说的匿名访问。
这类用户是指在FTP服务器中没有指定帐户,但是其仍然可以进行匿名访问某些公开的资源。
在组建FTP服务器的时候,我们就需要根据用户的类型,对用户进行归类。
默认情况下,Vsftpd服务器会把建立的所有帐户都归属为Real用户。
但是,这往往不符合企业安全的需要。
因为这类用户不仅可以访问自己的主目录,而且,还可以访问其他用户的目录。
这就给其他用户所在的空间带来一定的安全隐患。
所以,企业要根据实际情况,修改用户所在的类别。
[1]
[编辑本段]8UFTP客户端
ftp客户端。
体积可以说是最小的了,只有330K,免费中文版不需要汉化和破解的缘故吧。
功能也非常强大,应有尽有。
可以支持多线程上传;还支持直接上传压缩包后在空间上直接解压。
8uftp是非常精辟的ftp客户端。
目前体积最小的FTP客户端工具。
终身免费中文版,非汉化版,非破解版。
涵盖其它FTP工具功能 独家支持多线程上传,使上传速度更快更稳定。
同时支持直接上传压缩包,可在空间上直接解压。
也可以在空间上压缩后直接下载压缩包。
8uftp2.6升级功能 1.增加远程ftp目录的复制URL功能 2.增加远程ftp目录和本地目录对比的工具
[编辑本段]通过FTP传输文件的一般步骤
命令提示
需要进行远程文件传输的计算机必须安装和运行ftp客户程序。
在windows操作系统的安装过程中,通常都安装了tcp/ip协议软件,其中就包含了ftp客户程序。
但是该程序是字符界面而不是图形界面,这就必须以命令提示符的方式进行操作,很不方便。
启动ftp客户程序工作的另一途径是使用ie浏览器,用户只需要在ie地址栏中输入如下格式的url地址:
ftp:
//[用户名:
口令@]ftp服务器域名[:
端口号] (在CMD命令行下也可以用上述方法连接,通过put命令和get命令达到上传和下载的目的,通过ls命令列出目录,除了上述方法外还可以在cmd下输入ftp回车,然后输入openIP来建立一个连接,此方法还适用于linux下连接ftp服务器) 通过ie浏览器启动ftp的方法尽管可以使用,但是速度较慢,还会将密码暴露在ie浏览器中而不安全。
因此一般都安装并运行专门的ftp客户程序。
1.在本地电脑上登陆到国际互联网. 2.搜索有文件共享主机或者个人电脑(一般有专门的FTP服务器网站上公布的,上面有进入该主机或个人电脑的名称,口令和路径). 3.当与远程主机或者对方的个人电脑建立连接后,用对方提供的用户名和口令登陆到该主机或对方的个人电脑. 4.在远程主机或对方的个人电脑登陆成功后,就可以上传你想跟别人分享的东西或者下载别人授权共享的东西(这里的东西是指能放到电脑里去又能在显示屏上看到的东西). 5.完成工作后关闭FTP下载软件,切断连接. 为了实现文件传输,用户还要运行专门的文件传输程序,比如网际快车就有这方面的功能,其它还有很多专门的FTP传输软件,FlashFxp为其中的杰出软件。
有兴趣的网友可以试试其他的软件,如LeapFTP总归各有各的特色.
FTP协议
TCP/IP协议中,FTP标准命令TCP端口号为21,Port方式数据端口为20。
FTP协议的任务是从一台计算机将文件传送到另一台计算机,它与这两台计算机所处的位置、联接的方式、甚至是是否使用相同的操作系统无关。
假设两台计算机通过ftp协议对话,并且能访问Internet,你可以用ftp命令来传输文件。
每种操作系统使用上有某一些细微差别,但是每种协议基本的命令结构是相同的。
FTP的传输有两种方式:
ASCII传输模式和二进制数据传输模式。
1.ASCII传输方式:
假定用户正在拷贝的文件包含的简单ASCII码文本,如果在远程机器上运行的不是UNIX,当文件传输时ftp通常会自动地调整文件的内容以便于把文件解释成另外那台计算机存储文本文件的格式。
但是常常有这样的情况,用户正在传输的文件包含的不是文本文件,它们可能是程序,数据库,字处理文件或者压缩文件(尽管字处理文件包含的大部分是文本,其中也包含有指示页尺寸,字库等信息的非打印字符)。
在拷贝任何非文本文件之前,用binary命令告诉ftp逐字拷贝,不要对这些文件进行处理,这也是下面要讲的二进制传输。
2.二进制传输模式:
在二进制传输中,保存文件的位序,以便原始和拷贝的是逐位一一对应的。
即使目的地机器上包含位序列的文件是没意义的。
例如,macintosh以二进制方式传送可执行文件到Windows系统,在对方系统上,此文件不能执行。
如果你在ASCII方式下传输二进制文件,即使不需要也仍会转译。
这会使传输稍微变慢,也会损坏数据,使文件变得不能用。
(在大多数计算机上,ASCII方式一般假设每一字符的第一有效位无意义,因为ASCII字符组合不使用它。
如果你传输二进制文件,所有的位都是重要的。
)如果你知道这两台机器是同样的,则二进制方式对文本文件和数据文件都是有效的。
5.FTP的工作方式 FTP支持两种模式,一种方式叫做Standard(也就是PORT方式,主动方式),一种是Passive(也就是PASV,被动方式)。
Standard模式FTP的客户端发送PORT命令到FTP服务器。
Passive模式FTP的客户端发送PASV命令到FTPServer。
下面介绍一个这两种方式的工作原理:
Port模式FTP客户端首先和FTP服务器的TCP21端口建立连接,通过这个通道发送命令,客户端需要接收数据的时候在这个通道上发送PORT命令。
PORT命令包含了客户端用什么端口接收数据。
在传送数据的时候,服务器端通过自己的TCP20端口连接至客户端的指定端口发送数据。
FTPserver必须和客户端建立一个新的连接用来传送数据。
Passive模式在建立控制通道的时候和Standard模式类似,但建立连接后发送的不是Port命令,而是Pasv命令。
FTP服务器收到Pasv命令后,随机打开一个临时端口(也叫自由端口,端口号大于1023小于65535)并且通知客户端在这个端口上传送数据的请求,客户端连接FTP服务器此端口,然后FTP服务器将通过这个端口进行数据的传送,这个时候FTPserver不再需要建立一个新的和客户端之间的连接。
很多防火墙在设置的时候都是不允许接受外部发起的连接的,所以许多位于防火墙后或内网的FTP服务器不支持PASV模式,因为客户端无法穿过防火墙打开FTP服务器的高端端口;而许多内网的客户端不能用PORT模式登陆FTP服务器,因为从服务器的TCP20无法和内部网络的客户端建立一个新的连接,造成无法工作。
FTP软件可以更好的帮助你管理FTP目录提供更系统的工具 FTP工具推荐使用cuteftp 主动和被动模式FTP有两种使用模式:
主动和被动。
主动模式要求客户端和服务器端同时打开并且监听一个端口以建立连接。
在这种情况下,客户端由于安装了防火墙会产生一些问题。
所以,创立了被动模式。
被动模式只要求服务器端产生一个监听相应端口的进程,这样就可以绕过客户端安装了防火墙的问题。
一个主动模式的FTP连接建立要遵循以下步骤:
客户端打开一个随机的端口(端口号大于1024,在这里,我们称它为x),同时一个FTP进程连接至服务器的21号命令端口。
此时,源端口为随机端口x,在客户端,远程端口为21,在服务器。
客户端开始监听端口(x+1),同时向服务器发送一个端口命令(通过服务器的21号命令端口),此命令告诉服务器客户端正在监听的端口号并且已准备好从此端口接收数据。
这个端口就是我们所知的数据端口。
服务器打开20号源端口并且建立和客户端数据端口的连接。
此时,源端口为20,远程数据端口为(x+1)。
客户端通过本地的数据端口建立一个和服务器20号端口的连接,然后向服务器发送一个应答,告诉服务器它已经建立好了一个连接。
[编辑本段]FTP和网页浏览器
被动FTP模式
大多数最新的网页浏览器和文件管理器都能和FTP服务器建立连接。
这使得在FTP上通过一个接口就可以操控远程文件,如同操控本地文件一样。
大部分网页浏览器要求使用被动FTP模式,然而并不是所有的FTP服务器都支持被动模式。
ftp命令
1、FTP服务器的登陆 匿名用户:
FTP口令:
FTP 用户:
ANONYMOUS口令:
任何电子邮件 2、显示文件信息:
DIR/IS 3、下载文件:
GET文件名(下载到当前目录) 4、上传文件:
PUT文件名 5、多文件下载:
MGET 6、多文件上传:
MPUT 7、退出:
BYE 8、帮助:
HELP
用途
在本地主机和远程主机之间传送文件。
语法
ftp[-d][-g][-i][-n][-v][-f][-krealm][-q[-C]][HostName[Port]]
描述
ftp命令使用“文件传送协议”(FTP)在本地和远程主机或远程主机之间传送文件。
FTP协议允许在使用不同文件系统的主机之间进行数据传送。
尽管协议在传送数据中提供了很高的灵活度,它仍然不会尝试保留特定于某个文件系统的文件属性(如文件保护模式或修改时间)。
而且,FTP协议为文件系统的整体结构做了少许假设,且不提供或不允许诸如循环地复制子目录这样的函数。
请注意:
如果您正在系统之间传送文件,且需要保存文件属性或递归地复制子目录,请使用rcp命令。
[编辑本段]发布子命令
您可以在ftp>提示符中输入子命令,执行类似这样的任务:
列出远程目录、更改当前的本地和远程目录、在单一请求中传送多个文件、创建和除去目录,以及转义到本地shell执行shell命令。
请参考子命令章节取得每个子命令的描述信息。
如果您执行ftp命令而不为远程主机指定HostName参数,ftp命令会立即显示ftp>提示符,等待ftp子命令。
要连接远程主机,请执行open子命令。
当ftp命令连接到远程主机时,ftp命令在再次显示提示符ftp>之前会提示输入登录名和密码。
如果远程主机中未定义登录名的密码,ftp命令将不成功。
ftp命令解释器(处理在ftp>提示符处输入的全部子命令),会提供大多数文件传送程序没有的性能,如:
*对ftp子命令处理文件名参数 *将一组子命令集中成一个单一的子命令宏 *从$HOME/.netrc文件中装入宏 这些性能会帮助您简化重复的任务,并允许您在unattended方式使用ftp命令。
命令解释器将按照下列规则处理文件名参数:
*如果为此参数指定了-(连字符),则标准输入(stdin)将用于读取操作,而标准输出用于写入操作。
*如果未应用前面的检查,且文件名扩展已启用(请参考-g标志或glob子命令),则解释器将根据Cshell的规则扩展文件名。
启用了文件名匹配替换以及在期待单一文件名的子命令中使用了模式匹配字符时,结果可能与期待的不一样。
例如,append和put子命令将拓展文件名,然后仅使用所生成第一个文件名。
其它ftp子命令,如cd、delete,get、mkdir、rename和rmdir不会执行文件名拓展,并从字面上接受模式匹配字符。
*对于get、put、mget和mput子命令,解释器有能力在不同的本地和远程文件名语法样式之间进行翻译和映射(请参考case、ntrans和nmap子命令),并且在本地文件名不是唯一的情况下有修改它的能力(请参考runique子命令)。
另外,如果远程文件名不是唯一的,则ftp命令可将指令发送到远程ftpd服务器,以修改远程的文件名(请参考sunique子命令)。
*使用双引号("")指定包含空字符的参数。
请注意:
ftp命令解释器不支持管道。
也无需支持所有多字节字符文件名。
要在互动地运行的时候结束ftp会话,请使用quit或bye子命令或ftp>提示符处的EndofFile(Ctrl-D)按键顺序。
要在文件传送未完成之前结束它,请按中断按键顺序。
其缺省“中断键”序列是Ctrl-C。
stty指令能用于重新定义该键系列。
ftp命令在正常情况下会立即暂停正在发送(从本地主机到远端主机)的传输。
ftp命令通过将FTPABOR指令发送到远程FTP服务器,来暂停正在接收的传输(从远程主机到本地主机),并废弃所有传入的文件传送包(直到远程服务器停止发送它们为止)。
如果远程服务器不支持ABOR指令,在远程服务器未发送所有请求的文件之前,ftp命令不会显示ftp>提示符。
另外,如果远程服务器执行未期望的操作时,可能需要结束本地ftp进程。
安全性和自动登录 如果“标准的”是当前认证方法:
ftp命令也会通过将密码发送到远程主机来处理安全性,并许可自动登录、文件传送和注销操作。
如果您执行ftp命令并指定远程主机的主机名(HostName),ftp命令会尝试建立一个对于指定主机的连接。
如果ftp命令连接成功,ftp命令会在当前目录或主目录中搜索本地的$HOME/.netrc文件。
如果文件存在,ftp命令会在文件中搜索启动登录过程的入口,在命令宏定义中搜索远程主机。
如果$HOME/.netrc文件或自动登录项不存在,或是系统已使用securetcpip命令保护起来,ftp命令会提示用户输入用户名和密码。
不论命令行中是否指定HostName参数,该指令都会显示此提示。
请注意:
排队系统不支持多字节主机名。
如果ftp命令找到指定主机的$HOME/.netrc自动登录项,ftp会试图使用该登录项中的信息登录远程主机。
ftp命令也会载入任何在登录项中定义的命令宏。
在某些情况(例如,所需的密码在自动登录项中没有列出来),ftp命令会在显示ftp>提示符之前提示输入密码。
一旦ftp命令完成自动登录,如果宏是在自动登录项中定义的,ftp命令就会执行init宏。
如果init宏不存在或未包含quit或bye子命令,ftp命令将显示ftp>提示符并等待子命令。
请注意:
在提示符或在$HOME/.netrc文件中指定的远程主机名必须存在,并拥有在远程主机中定义的密码。
否则,ftp指令无效。
如果Kerberos5是当前的认证方法:
ftp命令会按在IETF草稿文挡"draft-ietf-cat-ftpsec-09.txt"定义的那样将此拓展用于ftp规范。
FTP安全性扩展将使用“GenericSecurityServiceAPI(GSSAPI)”安全机制来实现。
GSSAPI提供对于基础的安全性和通信机制来说是独立的服务。
GSSAPI是在rfc1508和1509中定义的。
ftp命令将使用AUTH和ADAT命令验证ftpd守护进程。
如果两者都支持Kerberos认证,则它们会使用本地用户DCE凭证验证远程系统上的用户。
如果这样失败了,且两个系统中都配置了“标准的”认证,则会使用上述的过程。
HostName参数是传送文件的目的地主机名称。
可选的Port参数指定了端口的标识符,通过此端口进行传输。
(/etc/services文件指定了缺省端口。
) 标志 -C允许用户指定:
通过send_file命令发出的文件必须在网络高速缓冲区(NBC)中经过缓存处理。
此标志必须在指定了-q标志的情况下使用。
只有当文件在无保护的情况下以二进制方式发送时此标志才适用。
-d将有
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ftp
![提示](https://static.bdocx.com/images/bang_tan.gif)