反向ssh

来源:互联网 发布:js判断页面加载完毕 编辑:程序博客网 时间:2024/06/12 04:40

在办公室的电脑上(B机)是无法访问家里的Ubuntu机器(A机),因为网络的原因。如果这个时候有台ssh服务器C并且他有公网IP,那么B可以通过反向ssh通道访问A。


A ubuntu 192.168.1.110 22 root 123456

B win7

C ubuntu 115.216.148.183 6002 root 1qaz2wsx


1、在B机上打开ssh登录C机器;

2、在A机终端输入:ssh -R 18888:localhost:22 root@115.216.148.183 -p 6002  

说明:

18888为C机与A机通信端口,由这里而设置;

localhost即本机的意思,照写即可;

22为A机的ssh服务端口号,根据实际而定;

root为访问C机的用户名,即ssh登录时的用户名;

115.216.148.183为C机IP,为公网IP;

6002为C机ssh服务端口号

root@115.216.148.183 -p 6002这一句其实就是A机登录C机的ssh服务所需信息

键入后、链接上C机,则提示输入密码,即C机的ssh登录密码。

2、在B机ssh客户端上输入(实际即在C机的终端输入)

 ssh localhost -p 18888

表示接受18888端口的ssh访问,链接后提示输入密码,机A机的ssh登录密码。

输入密码后,ssh客户端实际已转入A机的环境,至此ssh反向隧道已打通。


传输文件:

在ssh客户端键入rz弹出打开文件对话框,若提示rz指令找不到则输入apt-get install lrzsz

切记:时刻记着当前ssh客户端对应哪台机器的终端。


确保ssh不掉线

autossh -M 5678 -NR 18888:localhost:22 root@115.216.148.183 -p 6002  


0 0
原创粉丝点击