Node.js通过socket.iostreampipe道http请求

我正在从事一个项目,将公开的互联网上的私人networking服务暴露在防火墙之后,但通过一个代理来validation所有的请求。

基本上我有一个公共的node.js进程完成所有的身份validation,并将请求redirect到适当的terminal。 我使用http-proxy来validation请求,一旦我authentication他们。

目前我有一个node.js服务在所有端点上运行,我使用openvpn创build隧道和iptables来redirect任何不在本地主机上的请求。 本地node.js进程pipe理添加和删除iptable规则以及openvpn连接的authentication加上实际的node.js代码的更新。

这工作,但笨重,并没有很大的可扩展性。

我想从公共服务器通过websocket连接到另一端的node.js进程的HTTP请求,并redirect到任何IP:端口的意思。

基本networking图

[1]:

下面是我想要完成的基本networking。 我试图理解pipe道和水stream如何协同工作来实现这一目标,但并没有取得真正的成功。

任何人都可以提供一些基本的示例代码来完成这个任务吗?