连接远程 qnx 目标时,ftp ls/dir 命令在 Linux 终端上无法正常工作

连接远程 qnx 目标时,ftp ls/dir 命令在 Linux 终端上无法正常工作

我遇到了一个问题,我无法以访客 FTP 用户身份登录。我收到以下消息:

230 Guest login ok, access restrictions apply.
Remote system type is UNIX.
Using binary mode to transfer files.

但是,当我使用类似的简单命令时lsdir它不能按预期工作。

ftp> ls
200 PORT command successful.
150 Opening ASCII mode data connection for '/bin/ls'.
226 Transfer complete.
ftp> 

没有列出任何文件。我确定只有几个文件。请帮忙。

答案1

dir不久之前我遇到了同样的问题,尽管我没有通过访客帐户连接 - 但发出诸如或之类的命令时仍然没有返回任何数据ls

问题听起来像是你使用的 FTP 客户端积极的模式 - 这是默认模式。您应该切换到被动的模式,而是通过建立 FTP 连接然后输入passive。您应该会收到一条确认消息,表明被动模式已打开。然后输入您的lsdir命令。

解释:当你启动 FTP 时,它包含两个不同的连接 - 一个用于命令(命令连接),一个用于传输数据(数据连接)。当你处于积极的模式,命令连接是在服务器端口上建立的。但是,数据连接由服务器建立。然后,服务器通过端口 20 连接到您的计算机以建立该连接。问题在于,由于如今攻击和黑客攻击比 FTP 发明时更为常见,因此外部源(服务器)发送到您计算机上的端口 20 的数据将被防火墙、NAT 或其他安全软件阻止。

当你使用被动的模式中,客户端负责建立数据连接。它会选择服务器上的一个随机端口来执行此操作,然后建立连接。此过程不应被服务器或任何防火墙或安全软件阻止。

有关更详细的解释,请参见此处:

http://www.jscape.com/blog/bid/80512/Active-vs-Passive-FTP-Simplified

相关内容