我们有一台受信任的机器,它被授权连接到端口 12345 上的特殊 Web 服务,如下所示。Web 服务将特定客户端列入白名单,只有这些 IP 地址才允许连接。
[ restricted-access ] [ trusted machine ]
[ web service ] <===> [ ]
[ example.com:12345 ] [ mycorp.com ]
我的机器被授权连接到受信任的机器:
[ restricted-access ] [ trusted machine ] [ my box ]
[ web service ] <===> [ ] <--ssh--> [ ]
[ example.com:12345 ] [ mycorp.com ] [ workbox.com ]
我有一个脚本foo.rb
尝试连接到example.com:12345
。它失败了,因为我无权example.com
直接连接到 。只有 的受信任框mycorp.com
可以执行此操作。
如何设置 SSH 隧道以便脚本可以成功建立连接?
答案1
搞清楚了。我用过:
ssh -f -N -L 12345:example.com:12345 [email protected]
然后我编辑了 hosts 文件,以便 example.com 请求通过 mycorp.com 代理。虽然粗糙,但很有效。