天天看点

ssh隧道代理方法1 命令说明:2 local通到建立样例:3 remote隧道建立样例4 确认监听端口的开启

1 命令说明:

ssh隧道代理是方便远程访问服务器的功能. 分本地连接, 远程连接.

ssh命令 -L 参数表示 local

本地连接可以理解为建立ssh隧道的命令是在中转的服务器上执行的, 也可以理解运行ssh建立隧道的机器会建立本地的监听端口来接收需要转发的请求

-R参数表示 remote

远程连接是在无法直接访问到,需要通过中间机器访问的那台机器上执行建立ssh隧道的命令, 对于执行建立隧道的机器来说,是开通一个远程端口来监听需要转发的请求.

默认建立隧道命令会通过登录验证登录到远程机器上,并且登录断开后就关闭.可增加参数加以控制.常用的有

-N 不在登录到目标及其

-f 后台运行

-g 网关功能,开启所有的IP监听

2 local通到建立样例:

在192.168.56.1上执行local隧道 ssh -f -N- L 192.168.56.1:5555:192.168.56.2:8081 [email protected]

指定监听地址192.168.56.1上的5555端口监听转发,这里指定了IP, 否则默认127.0.0.1上的端口打开,或者使用-g参数打开所有ip上的5555端口

通过中间机器(这里是192.168.56.2)直接访问中间机器可以通到其他机器的端口上(这里是192.168.56.103:3306)

ssh -f -N -L 192.168.56.1:5555:192.168.56.3:3306 [email protected]

3 remote隧道建立样例

在192.168.56.2上执行remote隧道

ssh -f -N -R 5555:192.168.56.2:8081 [email protected]

外连接只能绑定的到代理服务器上的127.0.0.1地址上, 结果是在192.168.56.1上开通5555端口通向192.168.56.2上的8081端口

4 确认监听端口的开启

查看端口监听端口建立情况

ss -tnl

windows 在power shell下使用查看端口监听情况

netstat -ano

继续阅读