通过SSH隧道进行端口转发
我是本际云服务器推荐网的小编小本本,今天给大家介绍一下如何通过SSH隧道进行端口转发。

本地转发和远程转发
SSH隧道端口转发默认是开启的,如果没有开启则需要在ssh的配置文件中将AllowTcpForwarding设置为yes。
本地端口转发可以将本地的服务代理到另外一台机器上,常用于穿透内网或绕过防火墙。通过在192.168.1.1上执行命令,可以将本地的3306端口代理到192.168.1.2的22号端口上:
ssh -g -f -N -L 3306:192.168.1.2:3306 root@172.16.1.2 -p 22
远程端口转发则是将另一台机器的服务代理到自己的机器上,以便于外部访问。通过在192.168.1.1上执行命令,可以将192.168.1.2的3306端口转发到1.1.1.1的3306端口上,这样1.1.1.1就能访问192.168.1.2上3306端口的服务了:
ssh -f -N -R 3306:192.168.1.2:3306 root@1.1.1.1 -p 22
不管是本地转发还是远程转发,都需要指定转发端口,且需要连接到SSH服务端,选项解释如下:
- -L选项:表示使用本地端口转发创建SSH隧道
- -R选项:表示使用远程端口转发创建SSH隧道
- -N选项:表示创建隧道以后不连接到SSH服务端,通常与”-f”选项连用
- -f选项:表示在后台运行SSH隧道,通常与”-N”选项连用
- -g选项:表示SSH隧道对应的转发端口将监听在主机的所有IP中,不使用”-g选项”时,转发端口默认只监听在主机的本地回环地址中
以上是通过SSH隧道进行端口转发的基本介绍,希望对大家有所帮助。
原创文章,作者:小编小本本,如若转载,请注明出处:https://www.benjiyun.com/yunzhujiyunwei/vps-yunwei/7464.html
