12380网站建设的意见建议,网站头部代码,中国有名的设计公司,莲湖区建设局网站文件传输协议#xff08;英文#xff1a;File Transfer Protocol#xff0c;简称为FTP#xff09;是用于在网络上进行文件传输的一套标准协议。它属于网络传输协议的应用层。 FTP是一个8位的客户端-服务器协议#xff0c;能操作任何类型的文件而不需要进一步处理#xff… 文件传输协议英文File Transfer Protocol简称为FTP是用于在网络上进行文件传输的一套标准协议。它属于网络传输协议的应用层。 FTP是一个8位的客户端-服务器协议能操作任何类型的文件而不需要进一步处理就像MIME或Unicode一样。但是FTP有着极高的延时这意味着从开始请求到第一次接收需求数据之间的时间会非常长并且不时的必须执行一些冗长的登陆进程。 概述 FTP服务一般运行在20和21两个端口。端口20用于在客户端和服务器之间传输数据流而端口21用于传输控制流并且是命令通向ftp服务器的进口。当数据通过数据流传输时控制流处于空闲状态。而当控制流空闲很长时间后客户端的防火墙会将其会话置为超时这样当大量数据通过防火墙时会产生一些问题。此时虽然文件可以成功的传输但因为控制会话会被防火墙断开传输会产生一些错误。 FTP实现的目标 促进文件的共享计算机程序或数据鼓励间接或者隐式的使用远程计算机向用户屏蔽不同主机中各种文件存储系统File system的细节可靠和高效的传输数据 缺点 密码和文件内容都使用明文传输可能产生不希望发生的窃听。因为必须开放一个随机的端口以创建连接当防火墙存在时客户端很难过滤处于主动模式下的FTP流量。这个问题通过使用被动模式的FTP得到了很大解决。服务器可能会被告知连接一个第三方计算机的保留端口。此方式在需要传输文件数量很多的小文件时性能不好 FTP虽然可以被终端用户直接使用但是它是设计成被FTP客户端程序所控制。 运行FTP服务的许多站点都开放匿名服务在这种设置下用户不需要帐号就可以登录服务器默认情况下匿名用户的用户名是anonymous。这个帐号不需要密码虽然通常要求输入用户的邮件地址作为认证密码但这只是一些细节或者此邮件地址根本不被确定而是依赖于FTP服务器的配置情况。 FTP具有很强的兼容性可以在不同的操作系统之间通信可以使用不同的字符集、不同的文件结构以及不同的文件格式。 FTP使用三种传输方式 流方式数据作为连续的字节流从FTP交付给TCP 块方式数据按块从FTP交付给TCP 压缩方式将数据压缩后进行传送 主动和被动模式 FTP有两种使用模式主动和被动。主动模式要求客户端和服务器端同时打开并且监听一个端口以创建连接。在这种情况下客户端由于安装了防火墙会产生一些问题。所以创立了被动模式。被动模式只要求服务器端产生一个监听相应端口的进程这样就可以绕过客户端安装了防火墙的问题。 一个主动模式的FTP连接创建要遵循以下步骤 客户端打开一个随机的端口端口号大于1024在这里我们称它为x同时一个FTP进程连接至服务器的21号命令端口。此时该tcp连接的来源地端口为客户端指定的随机端口x目的地端口远程端口为服务器上的21号端口。客户端开始监听端口x1同时向服务器发送一个端口命令通过服务器的21号命令端口此命令告诉服务器客户端正在监听的端口号并且已准备好从此端口接收数据。这个端口就是我们所知的数据端口。服务器打开20号源端口并且创建和客户端数据端口的连接。此时来源地的端口为20远程数据(目的地)端口为x1。 客户端通过本地的数据端口创建一个和服务器20号端口的连接然后向服务器发送一个应答告诉服务器它已经创建好了一个连接。 FTP和网页浏览器 大多数最新的网页浏览器和文件管理器都能和FTP服务器创建连接。这使得在FTP上通过一个接口就可以操控远程文件如同操控本地文件一样。这个功能通过给定一个FTP的URL实现形如ftp://服务器地址例如ftp://ftp.gimp.org 。是否提供密码是可选择的如果有密码则形如ftp://login:passwordftpserveraddress。大部分网页浏览器要求使用被动FTP模式然而并不是所有的FTP服务器都支持被动模式。 架设FTP服务器 一、Windows Server 2008 R2 Windows Server 2008 R2 中自带了FTP Server 7.5可单独下载安装。 FTP 7.5 for IIS 7.x (x86) FTP 7.5 for IIS 7.x (x64) FTP 7.5 新特性原文地址 与IIS 7.x集成IIS 7.0、IIS 7.5FTP 7.5已经作为IIS 7.x的一部分被安装便于集中管理、维护。 对互联网标准更好、更安全的支持支持SSL上的FTP、IPv6、UTF8。 共享宿主改进可以将FTP架设在已经存在的站点多个FTP使用同一IP。 改进的日志与功能性支持提供更加详细的日志记录。 可扩展性增强可以编写自定义的用户验证机制。 下面在VirtualBox虚拟机中架设FTP服务器。宿主机IP192.168.0.100虚拟机IP192.168.0.101虚拟网卡采用桥连模式。 1.1、打开Server Manager在角色中点击【添加角色】 1.2、选中【Web Server(IIS)】点击【下一步】 1.3、点击【下一步】 1.4、在开发服务器上建议全部选中在生产服务器上则酌情选择点击【下一步】 1.5、点击【安装】 1.6、安装成功后关闭向导 1.7、开始à运行输入inetmgr打开IIS 管理器 1.8、可以看到FTP 7.5包含的选项 1.9、新建一个FTP站点 1.10、输入名称和物理路径点击【下一步】 1.11、IP不限制默认端口21不需要SSL证书点击【下一步】 1.12、设置权限点击【完成】 1.13、在浏览器中输入FTP服务器地址若无法访问请检查宿主机与虚拟机的防火墙设置 1.14、使用命令行访问FTP 最常用的命令有 ls 列出远程机的当前目录 cd 在远程机上改变工作目录 lcd 在本地机上改变工作目录 ascii 设置文件传输方式为ASCII模式 binary 设置文件传输方式为二进制模式 close 终止当前的ftp会话 hash 每次传输完数据缓冲区中的数据后就显示一个#号 getmget 从远程机传送指定文件到本地机 putmput 从本地机传送指定文件到远程机 open 连接远程ftp站点 quit 断开与远程机的连接并退出ftp ? 显示本地帮助信息 输入ftp 主机名/IP登录 由于设置为允许匿名访问故可以用匿名账户登录用户名anonymous密码任意 查看所有目录和文件 下载一个文件到本地 输入bye退出登录 1.15、使用FTP客户端连接FTP服务器 我使用的FileZilla 可以在WireShark中抓到数据包 二、Ubuntu 11.04 Linux下有很多FTP软件这里以Ubuntu下面的Pure-FTPd为例来搭建一下Linux中的FTP Server。 Pure-FTPd是一个基于BSD协议授权的开源FTP Server官方主页http://www.pureftpd.org功能全面具体功能可以查看文档。 安装Pure-FTPd 由于Ubuntu源里的包太老了故我选择直接下载源代码编译安装。在http://download.pureftpd.org/pub/pure-ftpd/releases/下载最新稳定版我下载的是pure-ftpd-1.0.32.tar.gz。解压缩tar zxvf pure-ftpd-1.0.32.tar.gz cd 压缩后的目录./configuremakesudo make install启动FTP Serversudo /usr/local/sbin/pure-ftpd 连接测试ftp localhost查看当前目录下的目录和文件在Windows中用命令行连接Pure-FTPd有很多命令及参数配置具体用法请参阅官方文档。小结FTP作为十分常用的文件传输协议在企业中有着广泛的引用各平台下也提供了大量的Server、Client。在使用中除了关注传输速度之外传输安全性也是必须考虑的。以下引用维基百科中的常用FTP Server、Client根据需要选用FTP服务器列表 维基百科自由的百科全书 以下是FTP服务器的列表。 [编辑]图形界面 Bullet Proof FTP Server [1]CesarFTP [2]Cerberus FTP Server [3]Gene6 FTP Server [4]GuildFTPd [5]PureFTPd [6]RaidenFTPD [7]Serv-U FTP Server [8]War FTP Daemon [9] [编辑]文字界面 AnomicFTPD [10]BSD ftpdglFTPd [11]ProFTPdvsftpd [12]wu-ftpd [13] FTP客户端列表 维基百科自由的百科全书 以下是FTP客户端的列表。 [编辑]图形界面 AnyClient [1]Core FTP [2]CrossFTP [3]CuteFTPDeluxeFTPFileZillaFlashFXPFTP Surfer [4]FTPRush [5]gFTPOneButton FTP [6]SmartFTP [7]Total CommanderWISE-FTPWS FTP [8]8uftp [9] [编辑]文字界面 lftpNcFTPtnftp [10]Wget只能下传 [编辑]只支持SFTP/SCP Sftp for win32 [11]WinSCP [12]