反向SSH隧道依赖于使用已建立连接的远程计算机来侦听来自本地计算机的新连接请求。远程计算机在本地计算机上的网络端口上侦听。 如果它检测到对该端口的SSH请求,则会通过已建立的连接将该连接请求中继回自身。 有了这个功能,我们可以到达内网的ssh接口,而不需要使用VPN隧道。
- 检查两端的ssh服务器是否有开启,服务端使用默认端口22.如下图所示:
内网
外网
2.内网输入ssh -R 13766:localhost:22 192.168.4.127
-R (反向)选项告诉ssh必须在远程计算机上创建新的SSH会话。
“ 13766:localhost:22”告诉ssh ,到本地计算机上的端口13766的连接请求应转发到远程计算机上的端口22。
3.外网服务器查看是否有监听13766端口
4.外网通过ssh隧道访问内网
5.遇到的问题
外网端访问需要指定对应的用户进行登录,否则会出现如下的错误,解决办法就是切换到对应的admin用户,如果没有的话需要创建一个。