我想检查我的FTP服务器是主动还是被动 . 我只有服务器名称,用户名和密码 . 我试图改编这个链接去做 - FTP Detect if active or passive modes are enabled
我可以使用GUI FTP客户端连接到此服务器 . 但是,在microsoft / windows telnet中,我使用了命令 o ftp.myftp.com
. 但是,我收到错误 - Could not open connection to the host on port 23:connect Failed
.
如何解决这个问题并查明我的服务器是否正在进行主动或被动ftp连接?
1 回答
主动/被动由客户端控制,而不是服务器 . 当客户端启动文件传输时,它决定是执行活动传输(
PORT
或EPRT
命令)还是执行被动传输(PASV
命令),因此可以基于每次传输指定模式 .FTP默认在端口21上运行,而不是在端口23上运行 . 您必须告诉telnet要连接的端口,例如:
发送
PASV
命令时,成功的响应代码始终为227,但遗憾的是,指定服务器的侦听IP /端口的实际文本不是标准化的,因此不同的FTP服务器供应商之间也不同 . 这甚至在RFC 1123中提到:RFC 1123还说明: