是否有SSH代理服务器

时间:2017-11-12 08:14:22

标签: ssh proxy

我想在我的静态IP服务器上安装静态SSH端点,该端点在设备移动时跟随设备。

我有一个可以在IP 和端口之间移动的设备。当它移动时,它会回家"所以我知道我可以使用ngrok来连接它。

不幸的是,由于设备更改了端口,因此使用动态DNS无法正常工作。

具体来说,我在我的设备上使用ssh -p $roamingPort user@$roamingIp。是的,我也付钱给他们相当于这个,但在我自己的服务器上这样做会很好。此问题也适用于其他情况。

首先ssh进入静态IP服务器并拥有一个脚本可以很容易地进入漫游设备:known_hosts。或者,制作一个类似的脚本,在客户端设备上运行,询问静态IP服务器当前所在的漫游设备,然后直接SSH到漫游设备。

对于使用当前工具的HTTP,这将相对容易。例如,使用nginx将请求代理到不同的URL。

但这些都不能提供良好的用户体验和#34;跟随漫游设备的一些静态SSH端点,可以与许多ssh客户端一起使用。

我一直在寻找一种方法来做到这一点并空手而归。

无论如何解决这个问题也应该很好地照顾 mkfifo fifo && nc -l -p $staticPort < fifo | nc $roamingIP $roamingPort > fifo

这与Hookable SSH proxy server to direct connection to remote host略有关系,但我想在我控制的框上运行该服务。

编辑:以下工作一次,直到手动重启为止。它也永远不会自行关闭。

return

1 个答案:

答案 0 :(得分:0)

你可以使用saltstack之类的东西,这可能对你想要的东西来说太多了,但是非常有用,特别是当拥有随机变化的动态客户端/节点时你只需要通过已知的方式访问它们host:port,通常用于负载均衡,例如。

这意味着您将需要一个服务器(salt master)和您的节点(客户端/实例/设备)。

在您的情况下,您可以在一个固定的静态IP /端口服务器中使用HAproxy,该服务器将使用salt mines自动更新后端。

可在此处找到此示例:https://docs.saltstack.com/en/latest/topics/mine/#example