基本上,我有一个不同的CentOS7 LAMP堆栈运行在不同的虚拟机(在xenserver)&openSSH。 我也有一些中间代理validation服务器运行(一个用于HTTP,一个用于SSH,一个用于SFTP),以确保安全性,因此所有的虚拟机都可以运行在相同的端口上。 HTTP代理正在工作,但我无法设置SFTP代理。 我希望客户端能够根据他们的用户名隧道到适当的VPS。
我尝试了许多不同的方法,并研究了几个不同的事情,试图使这个工作无济于事。
对于这个例子,假设有人试图通过我的外部IP(12.345.678.90)在端口80上查看vps1.com。 首先他们击中路由器(哪个端口将它们转发给HTTP代理),HTTP代理通过VirtualHosts将它们转发到正确的本地机器。 假设vps1.com的本地IP为192.168.1.10,vps2.com的为192.168.1.20。 他们被转发到正确的本地IP,并提供正确的内容。 太棒了,这部分工作正常。
现在让我们假设vps1.com的网站pipe理员想要login并更改他的网站。 他将以用户johnVPS1的身份login到端口2222上的SFTP客户端12.345.678.90。 路由器成功将其转发给SFTP代理(位于192.168.1.7)。现在,SFTP代理应将隧道或转发给正确的VPS,以便他可以编辑他的网站,但他无法访问任何其他内容。
External IP 12.345.678.90 Router --------------------------------------------- / \ Port 80 / \ Port 2222 / \ / \ HTTP Proxy SFTP Proxy / \ / \ vps1.com / \ vps2.com johnVPS1 / \ billVPS2 / \ / \ 192.168.1.10:80 192.168.1.20:80 192.168.1.10:2222 192.168.1.20:2222
我已经尝试了一些东西—
请,有人能带领我走上正轨吗? 我是不是全都做错了?还是我关了,只是失去了一些东西? 我花了几天的时间试图弄清楚,如果有人能指点我的话,我将不胜感激!