SSH 远程端口转发
Posted Hopkings
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SSH 远程端口转发相关的知识,希望对你有一定的参考价值。
既然"本地端口转发"是指绑定本地端口的转发,那么"远程端口转发"(remote forwarding)当然是指绑定远程端口的转发。
还是接着看上面那个例子,host1与host2之间无法连通,必须借助host3转发。但是,特殊情况出现了,host3是一台内网机器,它可以连接外网的host1,但是反过来就不行,外网的host1连不上内网的host3。这时,"本地端口转发"就不能用了,怎么办?
解决办法是,既然host3可以连host1,那么就从host3上建立与host1的SSH连接,然后在host1上使用这条连接就可以了。
我们在host3执行下面的命令:
$ ssh -R 2121:host2:21 host1
R参数也是接受三个值,分别是"远程主机端口:目标主机:目标主机端口"。这条命令的意思,就是让host1监听它自己的2121端口,然后将所有数据经由host3,转发到host2的21端口。由于对于host3来说,host1是远程主机,所以这种情况就被称为"远程端口绑定"。
绑定之后,我们在host1就可以连接host2了:
$ ftp localhost:2121
*注意:"远程端口转发"的前提条件是,host1和host3两台主机都有sshD和ssh客户端。
以上是关于SSH 远程端口转发的主要内容,如果未能解决你的问题,请参考以下文章
利用SSH端口转发实现远程访问内网主机远程桌面 建立SSH转发