我正在尝试使用perl的Net::FTPSSL来连接主机。当我运行脚本时,它会挂起并最终超出我的错误日志,但不会超出浏览器。问题似乎是在创建新连接时。如果我使用Filezilla进行连接,则会发出暂停/响应警告,指出主机密钥未知。当我在Filezilla中“确定”时,它会传递一个命令“Trust new Hostkey:Once”并发送密码并登录。如果这是我的问题,我该如何发送'ok'?这是我的代码 - 它挂在第二行 - 甚至在获取用户名/密码之前。
我正在使用的代码是:
use Net::FTPSSL;
$ftpobj = Net::FTPSSL -> new('host.com', Port => 21) or die "Can't open server.";
$ftpobj -> login("user","pass");
$ftpobj -> get ("file.csv");
$ftpobj -> quit;
答案 0 :(得分:1)
这可能是有意的,但sftp通常托管在端口22上,而你有21端口。
答案 1 :(得分:0)
SFTP和FTPS是两种完全不同的协议: