SSH端口转发

ssh端口转发

端口转发能够将其他 TCP 端口的网络数据通过 SSH 链接来转发,并且自动提供了相应的加密及解密服务。这一过程有时也被叫做“隧道”(tunneling)。实际上就是将tcp的端口的数据通过ssh连接来转发了。如图:


1.参数介绍

  • N 表示只连接远程主机,不打开远程shell
  • T 表示不为这个连接分配TTY(显示终端)*

上面两个参数可以放在一起用,代表这个SSH连接只用来传数据,不执行远程操作

  • f 表示ssh连接成功后,转入后台运行,这样就可在不中断ssh连接的情况下,在本地shell中执行其他操作

2.端口转发

2.1 本地端口转发

所谓本地端口转发,就是将发送到本地端口的请求,转发到目标端口。这样,就可以通过访问本地端口,来访问目标端口的服务。使用-L属性,就可以指定需要转发的端口,语法是这样的:

-L 本地网卡地址:本地端口:目标地址:目标端口

-L选项中的本地网卡地址是可以省略的,这时表示本地端口绑定了本地主机的所有网卡。

2.2 远程端口转发

为什么需要远程端口转发

通常,本地主机是没有独立的公网IP的,它与同一网络中的主机共享一个IP。没有公网IP,云主机是无法访问本地主机上的服务的。

所谓远程端口转发,就是将发送到远程端口的请求,转发到目标端口。这样,就可以通过访问远程端口,来访问目标端口的服务。使用-R属性,就可以指定需要转发的端口,语法是这样的

-R 远程网卡地址:远程端口:目标地址:目标端

3.相关的学习链接

  1. 端口转发的理解
  2. 玩转SSH端口转发
  3. 远程操作和端口转发

。。。。可能理解还存在不足,欢迎批评指正。。。。

本文来自网易实践者社区,经作者王志泳授权发布。