ssh连接打开后,如何设置端口重定向?


13

我在客户端和服务器上都使用openssh。我知道我可以通过ssh 运行ssh -Lssh -R设置一些端口重定向。但是,由于它们是命令行参数,因此必须在打开连接之前编写此类重定向。

我可以使用命令行ssh客户端即时设置端口重定向吗?

当我使用PuTTYssh客户端时,可以在连接已经打开的情况下以交互方式设置端口重定向,而无需断开或重新连接,因此我知道在技术上是可行的。

Answers:


24

如果您使用的是SSH命令行,并且尚未关闭转义字符功能,则可以~C在换行符后键入以在ssh客户端上打开迷你控制台。然后键入-L port:host:port-R port:host:port或者-D port,你会在命令行上添加一个重定向或-KR port删除重定向。

在不重做身份验证的情况下设置重定向的一种更灵活的方法是,将第一个ssh客户端启动为主服务器(-M-o ControlMaster=auto),然后将后续客户端启动为从服务器(-S-o ControlMaster=auto)。从站通过主站建立的连接建立隧道。您可能需要ControlPath在命令行或您的~/.ssh/config;中进行设置。有关更多信息,请参见ssh_config手册页中选项的描述。


如果有人~C escape not available to multiplexex sessions像我刚才那样遇到问题,请不要去寻找您的主连接。相反,只需将其添加-O forward到您的ssh端口转发命令中即可ssh -O forward -nfL 1234:whatever:1234 theserver,它将起作用。
帕特里克
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.