Python iproxy和paramiko给出连接错误

Python iproxy和paramiko给出连接错误,python,ssh,paramiko,Python,Ssh,Paramiko,在Catalina似乎扼杀了我的另一种方法之后,我正试图使用paramiko和iproxy来ssh到iOS主机 首先,我将本地端口转发到设备端口 iproxy 2222-u 这可以在netstat上看到,它正在侦听 tcp6 0 0 ::1.2222 *.* LISTEN tcp4 0 0 127.0.0.1.2222 *.*

在Catalina似乎扼杀了我的另一种方法之后,我正试图使用paramiko和iproxy来ssh到iOS主机

首先,我将本地端口转发到设备端口

iproxy 2222-u

这可以在netstat上看到,它正在侦听

tcp6       0      0  ::1.2222               *.*                    LISTEN     
tcp4       0      0  127.0.0.1.2222         *.*                    LISTEN 
然而,与帕拉米科,我总是得到一个错误

文件/usr/local/lib/python2.7/site packages/paramiko/client.py”,第368行,在connect-raise-novalidconnectionError(errors)中

paramiko.ssh_exception.NoValidConnectionsError:[Errno None]无法连接到127.0.0.1上的端口2222

当前的python代码是:

sshIP = "127.0.0.1"
sshPort = 2222

ssh_client =paramiko.SSHClient()
ssh_client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh_client.connect(hostname=sshIP,username='root',password=sshPass,port=sshPort)

stdin,stdout,stderr = ssh_client.exec_command("sw_vers")
prodver = stdout.readlines()
从cli手动SSHing可以正常工作

####IPROXY OUTPUT
New connection for 2222->22, fd = 5
waiting for connection
Requesting connecion to USB device handle 571 (serial: UUIDXXXXX), port 22

# CLI SSH
$ ssh root@127.0.0.1 -p 2222
Warning: Permanently added '[127.0.0.1]:2222' (RSA) to the list of known hosts.
root@127.0.0.1's password: 
Last login: Tue May 25 11:41:30 2021 from 127.0.0.1
iPhone-Black:~ root# 

不太确定整体修复是什么,但我在调用iproxy后添加了
time.sleep(3)
,以确保在调用paramiko之前它已成功启动

我还更改了paramiko选项的顺序,并根据paramiko文档在hostname=之后添加了port=

connect(主机名,端口=端口,用户名=无,密码=无,

这两种方法似乎都有所帮助,而且现在已经正确地建立了联系

ssh_client =paramiko.SSHClient()
ssh_client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh_client.connect(hostname=sshIP,port=sshPort,username='root',password=sshPass)

参数的顺序没有影响。