场景:
许多嵌入式设备(运行 Linux)在野外,在路由器后面,所以 NAT'd 我们无法连接到它们。
我们需要支持人员能够在任何设备上启动终端/shell session 。
他们的本地终端也将在公司防火墙后面进行 NAT,因此我们需要一些他们和设备都可以连接到的中央“汇合点”。
如有必要,我们可以要求支持人员登录某种终端服务器,但我更喜欢在他们的桌面上弹出一个终端窗口的解决方案。
我们可以(通过其他方式)告诉设备执行一些任意脚本或应用程序来启动 session 。
没有 NAT,它只是通过 SSH 连接到设备,然后我们就可以走了。但是在这个 NAT 环境中我有哪些选择?
如果需要,我们可以在任一端或 session 点服务器上开发代码,但显然如果有应用程序,我们就不必编写任何东西,甚至更好。
欢迎指出我可能遗漏的其他问题(尽管我已经看过)或我应该考虑用于中央“会面点”服务器的应用程序
最佳答案
如何简单地设置一个设备和支持用户都可以访问的 ssh 服务器,并让设备设置一个反向隧道(使用 remote port forwarding)?
ssh -R 10022:localhost:22 device@server
然后支持人员可以简单地连接到服务器并使用登录
ssh -p 10022 localhost
当然,这里需要考虑几个安全方面,具体取决于设备持有/可以访问的信息类型以及支持组织的设置方式。
关于linux - 如何向 shell 提供 "reverse ssh"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11793019/