SSH端口转发(隧道)

转载 2015年11月17日 17:04:33

SSH端口转发(Port Forwarding),是一种隧道技术,流往某端口的数据被加密后传向另一机器,依据转发方式的不同,有多种应用场景。[1][2]

以下所有的命令都是用SSH客户端执行的。执行命令的电脑下面称为“本地”电脑;而“远程服务器”则是运行着SSH服务器的机器(本文以my-remote-host.com为例)。

目录

[隐藏]

本地转发

有时,远程机器能访问某个端口(如remote-secret.com:8080),但本地机器无法访问。这时使用SSH的本地转发功能,即可将远程端口映射到本地:

ssh -L 9090:remote-secret.com:8080 my-remote-host.com

此时访问本地的9090端口就相当于用远程服务器my-remote-host.com访问remote-secret.com:8080

Hint.gif
提示: 
如果写成-L 9090:localhost:8080,就是把远程服务器的8080端口映射到本地的9090端口了

应用举例:如果远程服务器处于某受保护的内网中,可以借助其SSH服务获得与其等同的访问权限。

Hint.gif
提示: 
默认情况下,本地转发的端口只能在本机上访问,要想允许外部访问,请添加-g选项。

远程转发

让远程服务器监听remote_port端口,使其被访问时像本地电脑在访问somehost:its_port一样。

ssh -R 9090:local-secret.com:8080 my-remote-host.com

这样,访问my-remote-host.com:9090就等同于用本机访问local-secret.com:8080

应用举例:有时,本地电脑处于NAT内网中,难以从外部访问;而远程服务器可轻易被访问。利用远程转发功能,可允许他人通过远程服务器间接访问本地电脑的某个端口。

Note.gif
注意: 
类似本地转发,远程转发的端口默认也只能在远程服务器本机上访问,要想允许外部访问,可改写为-R *:9090:local-secrent.com:8080,并确保在服务器的sshd_config中打开了GatewayPorts选项。

动态转发

动态转发动态地将各种数据转发到远程端口。实际上相当于在本地电脑的指定端口开了一个SOCKS代理。如:

ssh -D 9090 my-remote-host.com

本地的9090端口就是一个SOCKS代理了。

Hint.gif
提示: 
如果my-remote-host.com是境外服务器,则该SOCKS代理实际上具备了“翻墙”功能。

常用参数

端口转发常与以下参数配合使用[3]

-f
ssh将在后台运行
-N
不执行命令,仅转发端口
-C
压缩传送的数据
-i
使用指定的密钥登录

建立SSH隧道(SSH端口转发)

ssh隧道功能,也就是端口转发功能非常好用,可以实现一些代理功能或者是穿透内网功能。 ssh的端口转发(或者叫做隧道)命令分为三种: 本地:ssh -C -f -N -g -L listen_por...
  • yx511500623
  • yx511500623
  • 2016年01月29日 16:31
  • 1833

SSH隧道与端口转发内网穿透

本文转载。 原文地址:http://blog.chinaunix.net/uid-7530389-id-2050093.htmlSSH隧道与端口转发及内网穿透大家都知道SSH是一种安全的传输协议,用...
  • zhanlanmg
  • zhanlanmg
  • 2015年08月24日 10:00
  • 2761

SSH隧道技术(端口转发,socket代理)

转载来自:http://www.cnblogs.com/fbwfbi/p/3702896.html 本文的受众 如果你遇到了以下问题,那么你应该阅读这篇文章 我听说过这种技术...
  • left_la
  • left_la
  • 2014年11月26日 18:49
  • 3860

SSH隧道:远程操作与端口转发

SSH隧道
  • wangtaoking1
  • wangtaoking1
  • 2015年03月21日 11:05
  • 2355

详解SSH三种端口转发

SSH端口转发的好处:     1. 利用SSH通道天然的加密特性     2. 通过具备访问权限的第三者,突破防火墙对自己的限制 角色定义:     A. 本地服务器,想通过中间服务器B间接访问...
  • evandeng2009
  • evandeng2009
  • 2016年07月16日 23:56
  • 8177

SSH隧道技术----端口转发,socket代理

转:http://www.cnblogs.com/fbwfbi/p/3702896.html 原文的原始出处不详,本文也是在复制引用了某篇转载,并做了必要的整理与编辑。 本文的受众 如果你...
  • zhangmiaoping23
  • zhangmiaoping23
  • 2017年01月23日 00:44
  • 495

SSH的端口转发:本地转发Local Forward和远程转发Remote Forward

http://zhumeng8337797.blog.163.com/blog/static/100768914201172125444948/ 实战 SSH 端口转发 htt...
  • a351945755
  • a351945755
  • 2014年03月22日 11:23
  • 47809

命令行也强大之ssh高阶:转发与隧道

http://liuzuhuijunlian.blog.163.com/blog/static/72489767201143111047638/ 古人以“夜不闭户”、“路不拾遗”来形容大治之...
  • shuzui1985
  • shuzui1985
  • 2012年11月06日 21:45
  • 1879

使用plink以及ssh转发连接到局域网内的远程桌面或其它端口

如果你的公司有电脑,那么你很可能有Windows服务器,也很可能不敢把3389暴露出来。但是你可能已经开放了ssh端口,这时,就可以通过ssh建立隧道来进行转发。假设现在你的ssh服务器叫server...
  • hiarcs
  • hiarcs
  • 2010年04月23日 17:12
  • 3888

使用反向代理(Nginx)和隧道转发(SSH)实现内网端口映射

使用反向代理(Nginx)和隧道转发(SSH)实现内网端口映射
  • sinat_27774177
  • sinat_27774177
  • 2017年08月01日 08:53
  • 1280
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:SSH端口转发(隧道)
举报原因:
原因补充:

(最多只允许输入30个字)