背景
实验室的服务器都只有内网ip 192.168.1.xx,在家里无法直接访问连接,经过师兄的配置,通过另一台服务器47.110.xx.yy可以进行跳板连接
在使用命令行连接到实验室服务器的操作如下:
如果还希望连接服务器中的docker container,就还需要sudo exec一次,并且还要再输入一次密码,非常头秃,因此想借助vscode remote ssh实现两级跳转直接连接到服务器中的docker
预备知识
VSCode Remote SSH实现本地机连接远程服务器(其中的docker)的操作就暂且略过,可以参考VSCode连接远程服务器里的docker容器
或是参考其他使用vscode插件连接远程服务器的博客
- Docker Ubuntu上安装ssh和连接ssh_JustToFaith-CSDN博客
- VSCode+Docker: 打造最舒适的深度学习环境 – 知乎
- VSCode中利用Remote SSH插件远程连接服务器并进行远程开发_lenfranky的博客-CSDN博客
这里主要介绍如何通过中间的跳板机连接远程服务器
开始配置
- 点击ssh插件 – 点击右上角的齿轮
- 可以直接选择第一个默认的ssh config文件
- 根据自己跳板机和远程服务器的情况进行配置
我的情况是
- 跳板机ip为47.110.xx.yy,已经在其上将本机的ssh-key授权(可以免密码登陆),免密码方法可以参考 SSH免密码登陆服务器
- 服务器ip为192.168.1.xx,docker容器开放的端口是6789
其实最根本实现跳板的一句配置是 ProxyCommand ssh -W %h:%p <SPRINGBOARD_NAME>
,而且要确保这个名字和上面定义的跳板名字一致
Host invix_springboard
HostName 47.110.xx.yy
Port 6000
User root
IdentityFile ~/.ssh/id_rsa

Host server
HostName 192.168.1.xx
Port 6789
User root
ProxyCommand ssh -W %h:%p invix_springboard
复制代码
连接使用
然后就可以直接点击远程服务器的连接按钮 – 输入密码,完成连接?
Resources
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END