"错误的配置选项:ServerAliveInterval"使用Net :: OpenSSH和Solaris SSH客户端

时间:2014-08-14 13:55:15

标签: perl ssh openssh

我尝试使用Net::OpenSSH连接到远程主机:

my $ssh = Net::OpenSSH->new(
    $ip_address,
    user => $user,
    password => $password,
    timeout => 3600,
    master_opts => [ -o => "StrictHostKeyChecking=no" ],
    ctl_dir => $ENV{HOME}
);

但我收到以下错误:

command-line: line 0: Bad configuration option: ServerAliveInterval
Unable to connect to remote host: unable to establish master SSH connection: bad password or master process exited unexpectedly at t1.pl line 33.

我使用的是以下版本的SSH客户端:

$ ssh -V
SSH Version Sun_SSH_1.0.1, protocol versions 1.5/2.0.

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

Net::OpenSSH不支持Solaris SSH客户端。来自docs

  

与Solaris捆绑在一起的SSH客户端是OpenSSH的早期版本,它不提供Net :: OpenSSH所需的多路复用功能。您必须安装OpenSSH客户端。

Install the OpenSSH client并确保在路径中的系统ssh之前显示

或者,使用new选项my $ssh = Net::OpenSSH->new($host, ssh_cmd => '/usr/local/bin/ssh');

{{1}}