我想从家用电脑访问防火墙后面的工作电脑。
当工作防火墙阻止意外的传入连接时,我必须打开从工作计算机到家用计算机的反向SSH隧道,如下所示:
ssh -R 12345:localhost:22 homeuser@homeip
从我的家用电脑,我可以使用端口12345访问工作计算机:
ssh -p 12345 workuser@localhost
问题是,这需要我在家庭防火墙上打开洞并将端口转发到我的家用电脑。
这是我的问题:
有没有办法可以让两台机器相遇一半?
假设我在家里的电脑上,同事在我的工作电脑上,我们都知道对方的本地IP(计算机从路由器获取)和互联网IP(路由器从ISP),我们每个人都可以通过某种方式与另一方建立传出连接吗?
答案 0 :(得分:1)
没有。如果您不想在路由器中转发端口,那么两台计算机之间需要一些可相互访问的计算机才能连接。 (这可能是一个虚拟机,例如Digital Ocean提供的虚拟机,或提供shell登录的Web主机,或者您可以在家庭网络上使用Raspberry Pi,并将SSH转发给它,以便它始终可用。)
如果要访问远程计算机上的端口22:
ssh -R 12345:localhost:22 user@your.sshgateway.com
然后在家用电脑上:
ssh -L 2222:localhost:12345 user@your.sshgateway.com
然后您可以使用以下方式连接到远程计算机
ssh -p 2222 workuser@localhost