Perl ssh连接并执行telnet连接
我有多个 cisco 路由器,配置了允许从 5 个指定主机进行 telnet 访问。现在我想在一台主机上执行一个 perl 脚本,该脚本通过 ssh 连接到其他主机,并检查是否可以通过 telnet 到路由器。 我尝试了系统“ssh host”命令,但不幸的是没有任何乐趣。有人可以帮我吗?
非常感谢。
我尝试了以下方法,但没有成功。一些想法?
use Net::OpenSSH;
$ssh = Net::OpenSSH->new("linuxserver", user => "username", password => "password", master_stderr_discard => 1);
$command = "telnet routername";
@out = $ssh->capture({stdin_data => "routerpassword\n"}, $command);
print "@out\n";
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以使用 Net::SSH2 连接并将连接转发到使用 tcpip 方法。或者,您可以使用 Net::OpenSSH (只需要 OpenSSH 二进制文件)执行相同操作,请参阅 隧道。
You can use Net::SSH2 to connect and forward a connection to the router using the tcpip method. Alternately you can use Net::OpenSSH (which only requires the OpenSSH binaries) to do the same, see the information on Tunnels.