如何建立多客户端 - 使用SSH反向端口转发的单服务器架构

时间:2017-03-14 14:19:27

标签: ssh network-programming client-server nat ssh-tunnel

我正在开发一个项目,该项目包含许多Raspberry PI N个客户双向(并且安全)连接 - 已知,可访问, fixed-IP地址服务器

客户端(Raspberry PI)都通过经典NAT连接到Internet。假设客户端由1到N之间的数字标识。

[Client] Raspberry PI <-> NAT (Internet Provider) <-> Internet
All client's public IP are dynamic

服务器位于互联网上某处 IP地址A

--- 我的 目标:使用 SSH 协议将每个客户端连接到服务器。 ---

服务器需要随意向任何客户端发送数据(无广播),每个客户端都需要向服务器发送数据。

会有&#34; N&#34; SSH隧道,由客户端发起,使用反向端口转发或/和端口转发。

我缺乏SSH知识的地方:

  

1)服务器如何将每个隧道与客户端相关联   为了能够使用适当的隧道?一个程序怎么样(for   例如,C)识别和&#34;使用&#34;每个隧道用于发送和接收   服务器侧λ

     

2)使用[反向]端口转发,端口有什么需求   服务器端,每个客户端是否需要服务器上的远程端口?

     

3)我是否需要创建一个程序,将每个传出端口链接到   客户端ID 和进入端口相同的东西?

我的问题是当服务器需要将数据发送到特定客户端时,该怎么做?

非常感谢。

0 个答案:

没有答案