【发布时间】:2019-08-23 22:12:32
【问题描述】:
这是我非常简单的一段代码,旨在通过端口 8888 上的本地 socks 代理连接到 ssh 服务器
import subprocess
host = 'X.x.X.x'
port = 22
subprocess.call( [
"ssh",
"-o", "ProxyCommand='/bin/socat - SOCKS4A:127.0.0.1:%h:%p,socksport=8888'",
"-p", "{}".format(port),
"root@{}".format(host)
])
但是,我在尝试执行时收到了一条丑陋的错误消息。
/bin/bash: /bin/socat - SOCKS4A:127.0.0.1:X.x.X.x:22,socksport=8888: No such file or directory
ssh_exchange_identification: Connection closed by remote host
trange 是直接复制粘贴整个命令行到 shell 上的工作。
【问题讨论】:
标签: python ssh subprocess socat