使用 ssh 转发 unix 数据报套接字?
Posted
技术标签:
【中文标题】使用 ssh 转发 unix 数据报套接字?【英文标题】:Forward unix datagram sockets with ssh? 【发布时间】:2018-02-27 19:17:24 【问题描述】:是否可以使用 ssh 转发数据报套接字?似乎默认行为是转发或创建流套接字。我正在尝试使用 python 写入远程 unix 数据报套接字。尝试使用 ssh 转发套接字,这样我就可以使用 python 在本地编写......这有效,但似乎只适用于流套接字:(
【问题讨论】:
看看socat
一个在不同端点类型之间传输数据的强大工具,如果需要,您可以在 ssh 隧道旁边运行。
谢谢,我们将重新访问 socat,在初始故障排除期间,我们在远程计算机上使用 socat 从流传输到数据报。我们遇到了一堆问题,将 json 消息分成两部分。即使在调整了 byte max -b 选项之后..我们将再次尝试再次感谢...
您正在通过 UDP 传输 JSON 数据?除非您在协议中添加一些保证(基本上是 TCP 提供的保证,如数据包排序和重传),否则如果您的 JSON 有效负载不适合单个 UDP 数据包,您将始终面临损坏数据的风险。
【参考方案1】:
这里有一个例子:https://stackpointer.io/network/ssh-port-forwarding-tcp-udp/365/ 基于ssh
+ socat
:
-
进行 ssh 端口重定向,例如:
ssh -L 8000:127.0.0.1:8000 user@server01
运行socat
将UDP传输到TCP端口8000:socat -T15 udp4-recvfrom:53000,reuseaddr,fork tcp:localhost:8000
然后这篇文章谈到了ssf
(https://securesocketfunneling.github.io/ssf/),我从未听说过它,但声称可以同时进行 UDP 和 TCP 重定向,所以这对你来说可能是另一个想法。
【讨论】:
以上是关于使用 ssh 转发 unix 数据报套接字?的主要内容,如果未能解决你的问题,请参考以下文章