Python中文
首页
教程
问答
标签
搜索
登录
注册
关于使用Python启动SSH隧道的问题
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>从用Python编写的HTTP RPC服务器启动SSH隧道时遇到问题。</p> <p>有一个基于Python的BaseHTTPServer,用Python编写的简单HTTP-RPC服务器。 作为服务的一部分,我想启动一个从RPC服务器到远程计算机的SSH隧道。我使用os.system在RPC调用调用的Python脚本中启动SSH隧道</p> <pre><code>os.system("ssh -f -n -N -L 127.0.0.1:%d:localhost:%d user@%s" % (6800, 9000, "remote.machine")) </code></pre> <p>乍一看似乎一切都很好,因为隧道已经开始,我可以使用它,但有一件事我注意到。除了监听端口6800,SSH还开始监听端口8001(HTTP RPC服务器运行的端口)。</p> <p>以下是关于RPC服务器和SSH的lsof输出:</p> <pre><code>rpc.py 27763 usern 5u IPv4 102130428 TCP 127.0.0.1:8001 (LISTEN) ssh 1951 usern 14u IPv4 102149728 TCP 127.0.0.1:6800 (LISTEN) ssh 1951 usern 5u IPv4 102130428 TCP 127.0.0.1:8001 (LISTEN) </code></pre> <p>在RPC服务器重新启动之前,一切正常。在重新启动期间,RPC服务器被迫关闭与侦听套接字的连接,但SSH的连接保持打开状态,RPC服务器无法再次在同一端口上启动。</p> <p>SSH隧道似乎也以某种方式与RPC服务器监听套接字的fd相关联。</p> <p>任何人都能提示如何从脚本设置SSH隧道,而脚本只监听假定的端口(本例中是6800)。</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>我怀疑这与分叉,然后告诉ssh从调用进程中分离(“-f”)有关。</p> <p>另外,不确定这是否有帮助,但是如果您的python足够现代化,可以使用subprocess模块。</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
尝试将单元格与pythondocx合并
2 回答
尝试将卡的5个值传递给函数,但不起作用
1 回答
尝试将卷绑定到docker容器
4 回答
尝试将原始queryset转换为queryset时出错
1 回答
尝试将原始输入与函数一起使用
7 回答
尝试将参数传递给函数时,可以通过python中的“@app.route”
5 回答
尝试将变量mid脚本返回到我的模板
5 回答
尝试将变量从一个函数调用到另一个函数
7 回答
尝试将变量传递给一个名称与参数不同的函数是否更好?
3 回答
尝试将变量传递给函数内部的函数。Python
10 回答
尝试将变量作为参数传递
10 回答
尝试将变量作为命令
10 回答
尝试将变量旁边的数据从文本复制到csv时,python获取错误:
4 回答
尝试将变量输入到sql数据库中已创建的行中
7 回答
尝试将只有两个或更多重复元音的单词打印到文本文件中
5 回答
尝试将后缀(字符串)添加到列表中每个WebElement的末尾
2 回答
尝试将命令行输出保存到fi时出错
2 回答
尝试将唯一ASCII文件导入数据帧时出现分析错误
10 回答
尝试将回归程序从stata转换为python
3 回答
尝试将图像上的点投影到二维平面时打开CV通道
6 回答