连接到服务器以进行SFTP时出错

时间:2017-01-29 10:15:45

标签: perl sftp

尝试使用Perl连接到SFTP服务器但不能。试过下面的代码,如果你发现代码中有任何错误,请告诉我。

use Net::SFTP::Foreign;
  my $host = 'test.rebex.net';
  my $sftp = Net::SFTP::Foreign->new($host);
  $sftp->die_on_error("Unable to establish SFTP connection");

以上代码给出错误:

  

'ssh'未被识别为内部或外部命令,可操作   程序或批处理文件。无法建立SFTP连接:连接   远程服务器在Sftp-Foreign.pl第11行被破坏。

我尝试过的另一个代码:

use Net::SFTP::Foreign;
use Net::SSH2;

    my $ssh2 = Net::SSH2->new();
    my $host = 'test.rebex.net';
    my $user = 'demo';
    my $pass = 'password';

  $ssh2->connect($host)
    or die "connect failed";
  $ssh2->auth_password($user, $pass)
    or die "password auth failed";
  my $sftp = Net::SFTP::Foreign->new(ssh2 => $ssh2,
                                     backend => 'Net_SSH2');
  $sftp->error and
    die "Unable to stablish SFTP connection: ". $sftp->error;

  $sftp->get("foo", "foo") or die "get failed: " . $sftp->error;

这给出了以下错误:

  

在Perl_sftp_ssh2.pl第9行连接失败。

我尝试使用Putty连接到服务器,这样可以正常工作。请帮忙。提前谢谢。

0 个答案:

没有答案