Perl ssh连接并执行telnet连接

Perl ssh连接并执行telnet连接

问题描述:

我有多个cisco路由器配置了5个指定主机允许的telnet访问。现在我想在一台通过ssh连接到其他主机的主机上执行perl脚本,并检查是否可以使用telnet到路由器。 我试过系统“ssh主机”的命令,但不幸没有喜悦。请有人帮助我吗?Perl ssh连接并执行telnet连接

非常感谢提前。

我尝试了以下,但没有成功。一些想法?


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"; 


您可以使用Net::SSH2连接,并使用tcpip方法转发到路由器的连接。或者,您可以使用Net::OpenSSH(它只需要OpenSSH二进制文件)执行相同操作,请参阅Tunnels上的信息。

+0

对不起,但我是一个真正的新的Perl。你有一个小代码的例子吗? – Stefan 2011-04-05 08:09:35

+0

@Stefan:这两个模块的文档都显示了如何在顶部使用它们的示例。只需点击链接。 – CanSpice 2011-04-05 22:35:39

+0

@Canspice:谢谢。 – Stefan 2011-04-06 06:56:43