ssh实现内网穿透(需要利用一台具有公网ip的服务器进行中转)
一、首先需具有一台外网ip的服务器1.打开 /etc/ssh/sshd_config,将GatewayPorts参数设为yes2.systemctl restart sshd.service,重启ssh服务注意:较低版本的Linux服务器 重启命令为 service sshd restart二、内网电脑1.命令:ssh -NTf -R 11111:192.168.31.243:22...
一、首先需具有一台外网ip的服务器
1.打开 /etc/ssh/sshd_config,将GatewayPorts参数设为yes
2.systemctl restart sshd.service,重启ssh服务
注意:较低版本的Linux服务器 重启命令为 service sshd restart
二、内网电脑
1.命令:ssh -NTf -R 11111:192.168.31.243:22 root@123.123.123.123
按提示输入远程账号访问密码
参数说明:
- 11111: 绑定公网linux的端口号
- 192.168.31.243: 内网linux的局域网ip
- 22: 内网linux可以ssh连接的端口号。。主要用于与公网linux进行联系的
- root: 公网linux的用户名
- 123.123.123.123:公网linux的ip
注意:请确保公网电脑防火墙设置,需要开放11111端口。。内网的linux虚拟机也要开放22端口(这个默认是开启的)
三、访问(此时还有问题,断线无法重连,请继续往后看)
就是指定把所有访问公网123.123.123.123:11111的请求都映射到内网:192.168.31.243:22上。。
然后任意一台能联网的电脑。使用ssh -p 11111 123.123.123.123就会远程登录到内网192.168.31.243中。。
四:最后,当内网的电脑(我的虚拟机)重启或者其他方式导致断线。。。那么需要重新连接,此时再执行上面的命令去连接公网ip就会报错。。而且也映射不到当前主机了。。
所以还需要配置自动重连:
1、centos安装autossh
https://blog.csdn.net/qq_36951116/article/details/103205760
2、此时可以使用下面的命令代替第二步的命令。。
autossh -M 55555 -NTf -R 11111:192.168.31.243:22 root@123.123.123.123
-M:在55555端口上监听连接的变化,只要断开就重连 ,随便指定一个没占用的端口就行
更多推荐
所有评论(0)