进者有分!ICS开发FTP服务器中的PASV设置 (200分)

  • 主题发起人 主题发起人 未来黑客
  • 开始时间 开始时间

未来黑客

Unregistered / Unconfirmed
GUEST, unregistred user!
用ICS的ftpserver作FTP服务器.
请问,在服务器的哪个过程或事件中使用:
client.passivemode:=true;
client.passivestart:=true;
client.passiveconnection := true;

就是让FTP客户端使用被动方式(PASV)
来和服务器连接。
请给出详细的事件过程代码。
谢谢。
200
分。
不想在说多少分了,没有意义——对高手来说。
我想作一个类是SERVER-U
的FTPSERVER
有人回答这个问题,就公开原码。

//
没办法。没有人会!!
过几天放分,过几天放分,过几天放分,过几天放分,过几天放分,过几天放分,过几天放分,过几天放分,过几天放分,过几天放分,过几天放分,过几天放分,过几天放分,过几天放分,过几天放分,过几天放分,过几天放分,过几天放分,过几天放分,过几天放分,过几天放分,过几天放分,过几天放分,过几天放分,过几天放分,过几天放分,过几天放分,过几天放分,过几天放分,过几天放分,过几天放分,过几天放分,过几天放分,过几天放分,
 
再加200分。
请高人指点。
 
不知道可否通过获取ftp服务器的返回信息来确定。
 
谢谢,
请说清点,我试了好多下,不管用。

 
你可以检测一下STATUS,如果是227则进入PASV方式,500是产生了exception
 
finalrinoa
你好:
请问在哪个过程中用?
在客户连接时?
在用户验证时,
在回应客户端时,

还是在哪个FTPSERVER
的事件过程中,
用你所说的,
status?
请问,
在决定用PASV方式
时,
是不是,
客户端是根据什么来决定要用这个方式连接的。

谢谢。
给我一些指点吧。
我真的不明白。
 
FTP有两个连接,一个是命令,一个是数据,一般命令通过命令通道,在列目录、下传文件、上传文件这三个命令中,要临时建立一个数据TCP连接,一般情况是由服务器主动连接客户,如果客户通过NAT天出来,没有公网IP,就要使用PASV方式,由客户连接到服务器,
ICS的ftp客户端我没用过,应该直接设置Passive:=true就可以了。
 
试试看看:
procedure TForm1.FtpServer1Authenticate(Sender: TObject;
Client: TFtpCtrlSocket; UserName, Password: TFtpString;
var Authenticated: Boolean);
begin
.
.
.
if Client.PassiveMode then
Authenticated := True
else
Authenticated := False;
.
.
.
end;
 
偶翻译的文档:
http://www.winmag.com.cn/forum/itemdisplay.asp?boardid=14&rootid=307955&id=307955
 
littlefat

你好,
我看了你的文章 。
明白了,
在LIST等
过程中使用。
不是一开始连接就用,
是吗?
我试试。
你有没有一点点的例子给我呀。
谢谢
 
客户端是根据你服务器端的PASV设置来运行的
 
to JamesBond_L,
if Client.PassiveMode then
Authenticated := True
else
Authenticated := False;

不行,
能连接,
可不列目录。

 
等。。。
 
你試試用PASV和PORT兩個方式連接,把他們的命令過程日誌記錄起來!對比一下!應該是,PASV模式的PORT之前是包含PASV這個指令的,如果沒有,則斷開這個連接,不過可能要一狀態表來記錄是否執行PASV指令。
 
我试试。
to :JamesBond_L,
 
没有人回答吗?
我可以帮你黑别人的网站呀,
用DDOS
一天控制3000网机。
 
PASV 与 PORT 方法是两种方式!
1 PASV 方式,客户端发 PASV 到服务器端,服务端打开一个端口, 把 IP 与端口发给
客户端,客户端再创建一个 Socket 连接到这个端口,接收数据。

2、PORT 方式,是客户端打开一个端口,把端口号发给服务器端,服务器来连接这个端口,
再传输数据。
 
TO 楼上,
我明白呀,
我问的是编程时在哪用?
应该是在列目录之前吗?谁告诉我呀?
 
主要是我没有看懂你的意思
 
to 楼上,
你好。
用ICS中的FTPSERVER控件作一个FTP服务器。
根据我的经验,多数服务器支持PASV
可是,ICS中的FTPSERVER控件,的PASV设置我没有成功,
也就是说,我作好了后,朋友在内网中,不能连接我的服务器FTP
有拨号上网的方式可以连接。
这就是问题。
那么ICS中的FTPSERVER有PASV的选项,可是在服务器的编程时的那个事件或过程中使用呢?
我没有成功。
请问,这次您看明白我说的了吗?
希望得到您的指点!

中国的网管多数用SERVER——U
我想试试作一个。
可真的太难。
还有一个问题。
就是用ICS中的FTPSERVER
作服务器会暴露主机的目录,
这情况用leapftp会出现,
用cute_ftp没有。
朋友告诉我要改ics的 server.pas
我们已改了,可还有问题。
也请高人说明一下,如何解决。
 
后退
顶部