想通过ssh隧道连接远端机器的VNC服务,对
ssh -L
命令不太熟悉,man ssh
后发现3组与隧道(turnnel)相关的参数:ssh -D
,ssh -L
,ssh -R
,一下子就搞糊涂了,所有下决心仔细研究一番。
何谓SSH隧道
隧道是一种把一种网络协议封装进另外一种网络协议进行传输的技术。这里我们研究ssh隧道,所以所有的网络通讯都是加密的。又被称作端口转发,因为ssh隧道通常会绑定一个本地端口,所有发向这个端口端口的数据包,都会被加密并透明地传输到远端系统。
SSH隧道的类型
ssh隧道有3种类型:
- 动态端口转发(Socks 代理)
- 本地端口转发
- 远端端口转发