内网穿透-场景1 局域网M: 有机器A,Linux系统,可访问公网,没公网IP 公网机器: 有机器B,Linux系统,有公网IP或者域名 局域网N: 有机器C,Linux系统,可访问公网,没公网IP 实现的效果,局域网M的机器A通过ssh直接访问机器C 由始至终,都不需要在 公网机器B 执行任何配置命令 步骤一: 机器C直接执行下面命令 # 启用公网服务器 37285 端口转发,下面命令的参数是以后台进程运行,用 ps -ef | grep ssh 命令查看进程的存活 ssh -gfnNTR 37285:localhost:22 公网服务器账号@公网服务器IP -o ServerAliveInterval=300 # 手动输入公网服务器的密码 # 用下面命令查看进程的存活,有时候命令跑了多次,存在多个进程,到时候手动kill掉 ps -ef | grep ssh 步骤二: 机器A配置 开一个命令行,输入下面命令 # ssh -p 机器B的ssh端口 机器B的登录账号@机器B的公网IP或者域名 -L 0.0.0.0:本地转发的端口:0.0.0.0:机器B的转发端口 ssh -p 22 root@公网服务器IP -L 0.0.0.0:37285:0.0.0.0:37285 # 手动输入公网服务器的密码,然后保持这个命令行窗口开启,如果登录成功后提示端口被占用,ps -ef | grep ssh 命令查出之前的进程,全部kill掉,重新连接 # bind: Address already in use # channel_setup_fwd_listener_tcpip: cannot listen to port: 37285 新开一个命令行,输入下面命令,输入机器C账号密码,直接登录机器C ssh -p 37285 root@localhost # 输入机器C的密码,如果界面卡住了,检测 机器C 和 机器A ,看看之前的命令有没有运行