我想通过公共可访问服务器(公共)连接到我的电脑(本地)后面的NAT。
在本地:ssh -g -R 8000:localhost:22 user @ public
然后公开:ssh -p 8000 user @ public但是我收到错误:连接被拒绝。
当我login到公共服务器时,我可以通过以下方式validation隧道正在工作:ssh -p 8000 localhost在本地计算机上打开ssh。
我怀疑公共服务器应该充当透明代理吗? 或者如何使它像那样工作。
谢谢
根据手册,您可以在公共主机上设置选项(在sshd_config ):
GatewayPorts yes
然后在本地尝试
ssh -R *:8000:localhost:22 user@public
(注意多余的*: :)。
如果您无法访问公共的sshd_config ,则可以像这样创build一个额外的端口:
本地(lancomp): ssh -R 8001:localhost:22 user@public
公开: ssh -g -L 8000:localhost:8001 user@lancomp
并且从外部连接,当然,在这两种情况下: ssh -p 8000 user@public
端口8000上的列表将只在公共macine的本地主机地址上进行。 如果你想要绑定到“真实的”networking接口,你可以试试-R public:8000:localhost:22 。