0
其实,我不确定这是否应该是ssh隧道问题或PuTTY特定问题。但我仍想在开始时将其作为ssh问题展示。ssh隧道如何区分shell命令数据和端口转发数据?
我在windows系统下使用ssh tunnel
,我使用腻子来做到这一点。 当我通过隧道设置创建腻子会话并连接目标机器时。我在Process Explorer中发现存在两个TCP连接。
- 之一是远程主机的连接:22
- 另一个被一个本地端口上侦听(如8000)。
从我的角度来看,它们是有道理的。因为第一个是真正的ssh连接到远程ssh服务器,所有真正的out-coming数据将通过。第二个是端口转发(ssh隧道),映射到远程http代理的结果,并且它确实按我的意愿工作。
然而,这里还有另一个“数据交换通道”,我的意思是,这是连接到远程ssh服务器的shell
。
我只是困惑:
- 如果本地端口8000(
ssh tunnel
)使用ssh连接将数据传送到远程机器,是使用相同的连接shell
? - 如果是(在这里似乎是YES,因为只有一个ssh连接),ssh连接如何区分这是shell命令数据还是一些隧道数据?
这是否意味着在ssh隧道下有协议可以区分数据是什么? (只是任意猜测)
此问题与编程无关,您可能想尝试[superuser.com](http://superuser.com/faq)。 – FrankS 2012-01-12 10:08:24