网站地图    收藏   

主页 > 后端 > 网站安全 >

内网FTP的搭建—FTP的两种传输模式详解 - Windows操

来源:自学PHP网    时间:2015-04-17 19:06 作者: 阅读:

[导读] 以下纯属个人心得,如果错误请指出.! 原作者 :斘⑿Δ炒炭 Www.OneTian.com 转载请保留此行 内网FTP的搭建—FTP的两种传输模式详解先来说下环境,服务器处于内网,对外映射 21,80,81,82,83,84,85. 共...

以下纯属个人心得,如果错误请指出.!    原作者 :斘⑿Δ炒炭  Www.OneTian.com <转载请保留此行>

内网FTP的搭建—FTP的两种传输模式详解

先来说下环境,服务器处于内网,对外映射 21,80,81,82,83,84,85. 共7个端口,.!
其中21端为FTPServer连接端,80端为IIS的Web占用,85端为Terminal Services占用.
只剩下81,82,83,84共4个对外可用映射端口,FTP服务端用的是Serv-U FTP V6.4.

成功利用Serv-U搭建好服务端后,利用系统自带的FTP.EXE在DOS模式下成功login!
在执行文件查看dir时出现150 Opening ASCII mode data connection for /bin/ls.
然后光标停住,服务端上看见有连接超时反映.DOS模式假死无回应,.!

再更换FTP工具后,利用FLASHXP来连,出现227 Entering Passive Mode (192,168,18,18,0,2)
然后回应超时! 再用LEAPFTP连,出现同样得提示,然后返回连接超时,.!

先是GOOGLE了一下,.! 了解到227是进入到被动模式后,无法建立传输连接而导致超时,.!

然后GOOELE出FTP一般的2种工作模式,为PORT 和 PASV ,分主动和被动,.!

PORT 和 PASV的简单区别如下:
PORT(主动)方式的连接过程是:客户端向服务器的ftp端口(默认是21)发送连接请求,
服务器接受连接, 服务器向客户端的空闲端口发送连接请求,建立一条数据链路来传送数据。

就是说:客户端打开一个端口,服务器可以去连接这个端口来建立连接。

pasv(被动)方式的连接过程是:客户端向服务器的ftp端口(默认是21)发送连接请求,
服务器接受连接, 客户端向服务器的空闲端口发送连接请求,建立一条数据链路来传送数据。

就是说:服务器打开一个端口,客户端可以去连接这个端口来建立连接。

所以说在内网环境下传输,最好选择PORT主动模式,.! pasv你也可以选,当然你需要映射出来,.!

然后在Serv-U里面设置pasv端口为你映射的端口,.!

先给大家讲下pasv传输的具体设置,等下讲PORT...!

本地服务器-->设置-->高级-->PASV端口范围,.!  <这里我填写的是81-84,因为我只映射了这几个可用的,最多为50个端口.>

然后保存,重启动Serv-U,然后再连接,.! 显示连接成功 !

[右] PASV
[右] 227 Entering Passive Mode (192,168,18,18,0,81)
[右] 正在打开数据连接 IP: 124.207.144.18 端口: 81
[右] MLSD
[右] 150 Opening BINARY mode data connection for MLSD.
[右] 226 Transfer complete.
[右] 列表完成: 768 字节 于 1.01 秒 (0.7 KB/秒)

上传一个test.txt然后域名访问 www.onetian.com/test.txt  见到正常的文件,.!

这样我们的PASV连接就成功连接,可以任意上传或下载了,.!

这个是利用PASV模式连接的,方便客户端在内网环境下连接.!


PORT模式的利用.,!

这个有很大的局限性,需要客户端在外网环境.! 应为他需要客户端打开一个端口,服务器可以去连接这个端口来建立连接。

在服务端和客户端都处于内网环境下是不可取的,推荐上面的PASV模式,!

并不是所有FTP工具都支持PORT模式的,这里我给大家推荐FlashFXP和LeapFTP.,!

这两个都很好很强大,也是我的最爱,.! 最关键的是可以自动尝试替换模式!

当PASV模式连接失败时候尝试PORT模式,在我上面的测试中是以内网的角度出发的,!

不然在开始的连接中替换模式为PORT时我就可以读取到文件了,.!

Serv-U-->域-->服务器-->设置-->高级  勾选允许被动模式  应用 ! 重启Serv-U...

LeapFTP-->选项-->偏好设置-->常规-->代理   去掉使用PASV模式的单选 勾选尝试轮流连接模式,.!

然后重启LeapFTP再进行连接,! <前提一定要客户端处于外网环境,.!>

FlashFXP-->选项-->参数设置-->连接-->代理  勾选使用被动模式..

确定保存然后重启FlashFXP,.! 再连接,.!  连接成功 ,,.

 

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论