通过客户端/服务器之间的现有SSH连接从服务器telnet到设备
这是问题。我是用我的脚本直接过(从我的Windows桌面 < =(远程登录)=>到设备)的telnet连接连接到设备。基本上,我的脚本在TL1中运行一些命令,捕获输出并根据参数值继续执行...非常简单。通过客户端/服务器之间的现有SSH连接从服务器telnet到设备
此装置将是安装另一个网络,这是我不能再通过telnet直接到达上。现在,我必须在特定服务器上启动ssh连接,然后从那里启动telnet会话。 (从我的Windows桌面 < =(SSH)=>服务器 < =(远程登录)=>到设备)
我理解的paramiko的基本...我发现代码上jessenoler网站:
import paramiko
ssh.connect('127.0.0.1', username='jesse', password='lol')
stdin, stdout, stderr = ssh.exec_command("uptime")
type(stdin)
stdout.readlines()
# output:
# ['13:35 up 11 days, 3:13, 4 users, load averages: 0.14 0.18 0.16\n']
我想不通我怎么会从服务器发起一个telnet ...我应该使用:
ssh.exec_command("telnet 10.10.10.10 10001")
我知道解决我的问题最简单的方法是在服务器上安装python,但我不能。有人遇到过这样的问题吗?感谢您的输入! :)
,您应该设置一个SSH隧道,而不是打开一个正常的连接。这可以通过-L localport:server:remoteport
的客户端命令行完成,也可以使用paramiko
从python完成。
看看this answer和linked gist有关如何使用Python做到这一点的详细信息。
当你设置这件事,你应该通过telnet连接到localhost
指定为将localPort端口上。
感谢您的意见! – oliver 2012-05-02 01:30:30
,将建立一个telnet连接到设备上,真正的。但它只会在设备和服务器之间进行,而不是从脚本中轻松访问。我会在桌面和服务器之间创建一个SSH隧道(使用ssh -L),并使用telnetlib模块直接通过桌面telnet到设备。 – ch3ka 2012-04-20 17:18:50
嗨ch3ka,感谢您的输入!以前从未这样做过。我想我必须在服务器端做前进。或者我只能在桌面上启动ssl -L?我有点困惑。我会继续阅读有关转发。 – oliver 2012-04-20 20:16:14