重定向第三方库的 TCP 流量

问题描述 投票:0回答:1

Szenario: 我可以通过我创建的 Python 套接字强制库(不是 Python,例如数据库客户端)的 TCP 流量吗?

背景是,我创建了这个套接字以通过 SOCKS5 代理连接到远程主机。

我读到的解决方案是 SSH 隧道,但这需要远程主机启用 ssh。出于安全考虑,这可能不会在生产环境中给出。

有直接用Python实现的方案吗?我正在考虑一个监听 localhost:4444 的“内部端口转发器”——我告诉库将流量发送到 localhost:4444——但“内部端口转发器”只是通过打开的套接字发送流量。

--------------------------------------     -------------     
| Host A                             |     | Host B    |                              
|                                    |     |           |               
| Libary ->  Internal Port Forwarder ------->          |
|                                    |     |           |
--------------------------------------     -------------                                     

我想到了什么:我查看了使用 paramiko 的 SSH 隧道并使用套接字模块创建了自己的 TCP 服务器。后者看起来很有前途,但我不确定这是否是实现这一目标的最优雅方式。 这里是自定义端口转发器工作要点的链接,但我想这会很不稳定(也许库创建了多个连接并且连接持久等)。

python networking tcp portforwarding
1个回答
0
投票

重定向第三方库的 TCP 流量

传统的方法是通过 LD_LIBRARY_PATH 或 LD_PRELOAD, 所以一个要求 TCP 连接的 C 库 将通过 Socksify 或通过 袜子 透明的 SOCKS 代理。

© www.soinside.com 2019 - 2024. All rights reserved.