通过跳板机连接内网服务器
背景:寒假宅在家想做点东西,需要用到学校里的GPU服务器,然而服务器的IP地址是内网IP,在家无法直接访问。正好学校里的另一台服务器有公网IP,所以打算将此服务器作为跳板机,从而访问内网服务器~
设备信息如下:
- 本地机系统:win10
- 跳板机系统:centos7
配置免密登录Linux跳板机
1.在本地机的cmd中输入:
1 | ssh-keygen |
生成rsa密钥对。如果一路回车的话,密钥会存放在C:\Users\<用户名>\.ssh目录下,如图所示,红框框选中的id_rsa.pub就是生成的公钥,我们后面需要用到,它上面没有后缀的文件是私钥:

1 | scp ./id_rsa.pub <跳板机用户名>@<跳板机IP>:~/.ssh/windows_rsa.pub |
3.登录跳板机,然后cd到~/.ssh目录下,新建文件:authorized_keys(之前创建过就不需要了),然后将刚才传上来的公钥导入这个文件里,命令如下:
1 | cd ~/.ssh |
4.之后用chmod命令将authorized_keys的权限改为600,.ssh文件夹的权限改为700
5.最后本地机尝试登录跳板机,成功!

设置SSH隧道
1.在本地cmd中输入:
1 | ssh -N -f -L 6000:<内网服务器ip>:22 -p <跳板机端口22> username@<跳板机ip> -o TCPKeepAlive=yes |
2.隧道打开之后,新打开一个cmd,首次连接输入ssh -v -p 6000 <内网服务器用户名>@localhost,然后输入yes(如果不是首次连接,可以去掉-v参数),就可以进入服务器玩耍了!
参考:
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!