我尝试使用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.
我该如何解决这个问题?
答案 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}}