相关疑难解决方法(0)

与Paramiko嵌套的SSH会话

我正在重写我写入Python的Bash脚本.那个剧本的关键是

ssh -t first.com "ssh second.com very_remote_command"
Run Code Online (Sandbox Code Playgroud)

我在使用paramiko进行嵌套身份验证时遇到问题.我无法找到任何处理我的确切情况的例子,但我能够在远程主机上找到sudo的例子.

第一种方法写入stdin

ssh.connect('127.0.0.1', username='jesse', password='lol')
stdin, stdout, stderr = ssh.exec_command("sudo dmesg")
stdin.write('lol\n')
stdin.flush()
Run Code Online (Sandbox Code Playgroud)

第二个创建一个通道并使用类似socket的sendrecv.

我能够让stdin.writesudo一起工作,但它不能与远程主机上的ssh一起使用.

import paramiko

ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect('first.com', username='luser', password='secret')
stdin, stdout, stderr = ssh.exec_command('ssh luser@second.com')
stdin.write('secret')
stdin.flush()
print '---- out ----'
print stdout.readlines()
print '---- error ----'
print stderr.readlines()

ssh.close()
Run Code Online (Sandbox Code Playgroud)

... ...打印

---- out ----
[]
---- error ----
['Pseudo-terminal will not be allocated …
Run Code Online (Sandbox Code Playgroud)

python ssh paramiko

32
推荐指数
3
解决办法
4万
查看次数

在Python中的远程机器上执行命令

我在Ubuntu上用python编写程序,ls -l在RaspberryPi上执行命令,与Network连接.

任何人都可以指导我如何做到这一点?

python terminal ubuntu tkinter paramiko

16
推荐指数
2
解决办法
5万
查看次数

标签 统计

paramiko ×2

python ×2

ssh ×1

terminal ×1

tkinter ×1

ubuntu ×1