由于疫情放假,有连接实验室服务器的需求,但是实验室的服务器不是直连,而是先通过一个跳板机,然后再通过这个跳板机连接到组里的服务器;而pycharm的调试只支持直连。
为了能再pycharm上远程调试项目,研究了一下配置ssh,从而进行内网穿透,达到可以直连组里服务器的效果。
第一步——配置免密登录:
首先在本地电脑到跳板机电脑配置ssh密钥登录(ssh-keygen,id_rsa之类的),然后在跳板机服务器到组里服务器上配置ssh密钥登录。
配置好以后,还需要进行两步:1)在本地电脑c/user/admin/.ssh/ 的目录下,vim config,类似于这样:
其中,Host 是你给跳板机取的名字,HostName是跳板机的IP地址,User是你登录跳板机的用户名,IdentityFile是ssh密钥存放的地址,Port是接入跳板机的端口号。
这样,在本地直接 ssh tiaoban,就可以连到跳板机,不需要别的操作,实现了免密登录。
2) 在跳板机的/home/shibaorong/.ssh/ 目录下,同样vim config:
各个变量的含义与(1)中介绍的相同。这一步,可以实现从跳板机到组里服务器的免密登录。
第二步——建立ssh隧道:
在本地命令行输入如下命令即可:
上述命令各个参数的含义如下:
-N 告诉SSH客户端,这个连接不需要执行任何命令。仅仅做端口转发
-f 告诉SSH客户端在后台运行
-L 做本地映射端口
此时,登录本地的6000端口就相当于登录内网服务器了。
第三步——配置pycharm
这里只需配置ip为127.0.0.1
, 端口为6000
,并输入内网服务器的账号密码即可看到服务器安装的python.
Reference:
使用Pycharm和跳板机 连接内网服务器