perl - 无法通过 Perl SSH 到 F5 LoadBalancer
问题描述
我正在尝试通过 perl 模块 Net::SSH2 连接到 F5 负载均衡器。我无法验证错误,而使用相同的凭据我可以通过 putty SSH 到设备。我已经分享了代码和下面的错误以供参考。有人可以帮我解决这个问题。
use Net::SSH2;
$deviceipF5 = "x.x.x.x";
$username = "xx";
$encrPass = "xx";
my @deviceipF5List = split(',',$deviceipF5);
if(@deviceipF5List ne 0)
{
foreach my $deviceipF5(@deviceipF5List)
{
my @deviceipF5List1 = split (':', $deviceipF5);
my $ssh2 = Net::SSH2->new();
$ssh2->debug(0);
$ssh2->connect($deviceipF5List1[0]) or die $!;
$ssh2->auth(username => $username, password => $encrPass) or die "Unable to login \n".$ssh2->die_with_error;
print "Connected to '$deviceipF5List1[0]' as '$username' \n";
my $channel = $ssh2->channel() or do { print "Unable to create channnel ssh channel to Device $deviceipF5List[0]";$ssh2->disconnect(); last;};
$channel->blocking(0);
$channel->shell() ;
print "SSH Success \n";
sleep(2);
我什至尝试使用auth_password而不是 auth 但没有运气。
下面是我得到的错误: Bad file descriptor at line 16
我尝试删除 $! 从第 16 行开始,但它导致另一个错误: 在第 16 行死亡
解决方案
推荐阅读
- scala - 玩!框架2.6!如果响应大小大于 50 字节,则 Gzip 过滤
- javascript - 添加 JSON 和 JavaScript
- javascript - 如何在粘性菜单下显示标题之外的部分或 div?
- git - Git - 创建本地分支后拉出原始主机
- signal-processing - 通过不同的 SNR 修改噪声强度
- maxima - 如何让 Maxima 存储函数输出?
- python - 为分类 Keras 准备视频数据
- webpack - 如何根据入口应用不同的加载器?
- electron - 如何在左侧固定导航的电子文件之间导航?
- python - 怎么改A3C Tensorflow例子来玩雅达利游戏?