如何利用SSH进行端口转发

江苏电信的网络不太好,连接linode tokyo服务器比较卡。相比而言,我在阿里云华东区的服务器连接Linode要好很多(不过阿里云的磁盘IO性能太烂了,这个还得写一篇博客)。然后,如果能利用阿里云服务器做跳板的话,相信网络一定会好很多。

因为平时使用linode tokyo的机器只是用来进行谷歌搜索的,所以对带宽的要求不是很高。正常情况下使用SSH动态转发就能满足我的需求,但是偶尔卡卡卡让人心生不爽。因此,在此介绍一种使用SSH将阿里云当成跳板机的方法。但是切记ssh是单线程的,网速仅仅能够满足网页浏览的需求,如果有视频浏览等流量较大的需求,请使用ShadowSocks等工具。

SSH提供了一种叫做端口转发的功能,详细的介绍见此文《实战 SSH 端口转发》,原理就是跳板机将目标机器的端口转发到自己的某个端口上。我们需要使用到SSH的-L参数,我们来看看SSH是如何定义这个参数的用法的:

 [-L [bind_address:]port:host:hostport]

也就是说需要跳板机的地址,跳板机的端口,服务器的地址,服务器的端口。
在这边我们需要填入的是 0.0.0.0:2017:127.0.0.1:22。

然后该在客户机上如何访问跳板机呢?使用如下命令:

ssh xxx@xxx.xxx.xxx.xxx -D xxxx -p 2017

相信大家了解了解其中的几个xxxx的含义吧,这样我们就ssh连接上的其实是目标服务器的22端口。

标签: none

添加新评论