vscode关于ssh的若干问题:跳板机设置,以及设置不同的私钥登陆,以及文件权限导致的问题

现有的设备:1、我的笔记本 (win10) 2、可以直接ssh的实验室的服务器(linux),3、我的实验室的电脑(linux)。笔记本可以连接到实验室服务器,但是没办法直接连接到我的电脑,我可以把实验室服务器当跳板机,然后在ssh到我的实验室电脑

如果直接用terminal的话,就两个语句

1、ssh [email protected] -p 5xX 

2、ssh [email protected] 

但是用vscode的话需要设置一下ssh才能一步连接到我的实验室电脑,参考 https://askubuntu.com/questions/311447/how-do-i-ssh-to-machine-a-via-b-in-one-command,将ssh的config文件修改如下:

Host serverXX
  HostName 222.195.XX.XXX
  User usera
  Port 5XX
Host internalmachine 
  ProxyCommand C:\Windows\System32\OpenSSH\ssh.exe -q serverXX nc -q0 192.168.X.XXX 22 
  User userb

然后vscode ssh连接的时候直接连接internalmachine: ssh userb@internalmachine,这样就可以通过一条命令连接到实验室我的电脑了。

关于使用多个私钥的问题,有些时候你的私钥不止一个,所以为了能够使用不同的私钥进行登陆需要一些其他设置
 

Host serverXX
  HostName 222.195.XX.X 
  IdentityFile  C:\your id_rsa path\
  PreferredAuthentications publickey 
  User usera
  Port 5XX

前提是你已经将你的公钥存放到服务器上了

2.有的时候还会遇到一些比较奇怪的问题,比如在Linux系统里面id_rsa文件以及config文件的权限也有可能导致某些问题,比如我遇到的:我的id_rsa创建的时候添加了密码验证,每次远程登录都要输一遍password解锁,所以可以使用ssh-keygen -p 把密码设置为空

另外最好把id_rsa文件和config文件的权限设置为600,即chmod 600 ,如果权限设置的太高会出各种奇奇怪怪的问题,所以如果碰到一些问题无法解决时,首先看一下各个文件的权限设置,也许问题就出在这上面

3.对服务器上,没有什么需要特别注意的地方,如果觉得密码登陆太麻烦可以使用密钥来登陆,把你的id_rsa.pub里面的内容复制粘贴到服务器~/.ssh/authorized_keys文件里面就行了,没有就创建一个

猜你喜欢

转载自blog.csdn.net/explorer9607/article/details/103309947