2013-07-05 112 views
0

我有一个关于以下系统架构的疑问:SSH隧道,端口转发和服务

假设我们有三台机器:

SERVER A 
SERVER B 
EXTERNAL A 

服务器是提供一些流媒体服务及其背后的UKNOWN网络,所以它打开一个指向PORT的反向SSH隧道到SERVER B,因此SERVER B可以通过http:// localhost:PORT访问SERVER A服务SERVER B正在运行linux和openssh服务器来接受隧道。 (此服务器是公开的)

的疑问是当我想通过访问公共服务器B. Suposing从外部A由服务器提供的,我知道,我想实现的东西,如端口进行流媒体业务:

EXTERNAL A -> 'http: //serverB_IP:PORT' -> SERVERB -> 'http ://localhost/PORT' -> Tunnel -> SERVER A service. 

为了纠缠它,甚至可能有很多SERVER A服务器用SERVER B打开一个隧道(每个服务器都在不同的端口上正确管理)。

有关如何实现这一点的任何想法?

回答

2

如果您在服务器B,则使

GatewayPorts yes              
sshd_config

有可能从外部连接到服务器B,并利用已建立的隧道到服务器。默认情况下,GatewayPorts处于禁用状态,隧道仅在本地工作。