autossh实现端口流量转发,可以解决连接不到内网的问题,借助一台跳板机将端口流量转发目标机的端口上
在跳板机上执行命令
autossh -M 0 -CNL *:18022:0.0.0.0:22 root@xx.xx.xx.xx -p 22
-M 的意思是本地启动一个端口监听到目的IP:port的连接是否正常 ,0 代表随机启动一个端口(下面图中的52974即为随机分配的一个端口号) -C是启动数据压缩 -N不执行远程命令,专为端口转发量身定做 -L 将本地18022端口映射到目的地址的22端口(如果是-R则将目标机的22端口映射到本地18022端口) -p 是目标主机ssh的端口
执行上述命令后在跳板机本地查看进程
多了两个进程
目标主机查看进程
多了一个进程 然后从外网主机ssh -p 18022 跳板机ip 会发现登陆到了目标机器上
!!!前提需要为外网主机对跳板机实现ssh免密登陆,跳板机对目标机实现ssh免密登陆