use Net::OpenSSH;
our $PC2 = "testPC2";
our $pc2_ssh = Net::OpenSSH->new(
"$PC2",user => "root",
password => "password",
master_opts => [-o => "StrictHostKeyChecking=no"]
)
or die "Error: $@";
$out = $pc2_ssh->capture2({ timeout => 10 },"ifconfig");
$pc2_ssh->error and
warn "operation didn't complete successfully: ". $pc2_ssh->error;
如果不加master_opts => [-o => "StrictHostKeyChecking=no"
在capture时会出错,error信息如下:
operation didn't complete successfully: unable to establish master SSH connection: the authenticity of the target host can't be established, the remote host public key is probably not present on the '~/.ssh/known_hosts' file at ssh.pl line。
master_opts中使用的是linux下ssh的命令参数,可在linux下通过man ssh查看