图解SSH隧道功能
SSH能够对SSH客户端与服务器端之间的网络通信提供加密功能,而且SSH的端口转发功能还能将其它TCP端口的网络数据通过SSH连接来转发,并且自动提供相应的加密和解密服务,这一过程也被称为“隧道”(tunneling),telent、ftp、SMTP等明文传输的TCP协议都可通过SSH的隧道机制实现通信加密传输。如果工作环境中的防火墙限制了一些网络端口的使用,但是允许ssh连接,也能够通过通过ssh端口转发功能来实现通信。
SSH端口转发主要具有两大功能:
1、加密SSH Client端至SSH Server端之间的通讯数据
2、突破防火墙限制,完成一些之前无法通过直接建立TCP连接实现的功能
一、本地端口转发
命令:ssh -L localPort : remoteHost : remotePort sshServer
1、确认host2的http服务可用
host3:
2、设置防火墙使host1无法访问host2的http服务
host2:
host1:
3、host1上配置本地端口转发
4、host1上访问host2上的http服务
host1:
http://localhost:9000
host3:
host2:
二、远程端口转发
命令:ssh -R sshServerPort : remoteHost : remotePort sshServer
1、确认host2的http服务可用
host3:
2、设置防火墙使host1无法访问host2的http服务
host2:
host1:
3、host3上配置远程端口转发
host3:
4、host1上访问host2上的http服务
host1:
http://localhost:9000
host3:
host2: