ssh反向连接 (SSH中继)


A:是外网服务器 ,在本例中是192.168.100.138
B:是内网机器,是反向连接的发起人 192.168.200.198
C:是远程主机。

第一步:A的sshd服务进程在侦听的接口是22222

如下图

第二步:B启动ssh进程,请求A主机的22222接口

并且 -R 12345:192.168.200.196:22 表示侦听IP为A:12345的报文,并把这些报文转到192.168.200.196:22上去。
当然,这些报文是通过一个tunnel来到B主机上的,这个tunnel是由ssh访问A主机22222接口建立的
此时在A主机上会有A:22222 ---- B:54975的TCP会话,这就是那个tunnel.

第三步:在A主机中命令:ssh   root@localhost -p 12345  
如下所示,进程10540是10534的子进程,子进程把访问12345端口的报文,交给了父进程,父进程再把此数据通过tunnel转给B主机。


B主机再把与数据转发给192.168.200.196.

如下图所示:
从 192.168.100.138可以ssh 进入到192.168.200.196上去了。
ssh反向连接 (SSH中继)_第1张图片

你可能感兴趣的:(ssh反向连接 (SSH中继))