vscode通过ssh连接服务器实现免密登录

一、通过ssh连接服务器

1、打开vscode,进入拓展(Ctrl+Shift+X),下载拓展Remote - SSH。

2、点击远程资源管理器选项卡,选择远程(隧道/SSH)类别。

3、点击SSH配置。

4、在中间上部分弹出的配置文件中点击第一个....config。

5、在点进的config文件中输入以下内容。

ps:

这里的hostname是服务器的ip地址;

port端口号有就写上,没有的话可以不写;

user是服务器上用户的用户名

(例如:Linux中 "用户名"+@+"服务器ip地址" 就是访问服务器上用户的服务器用户访问地址。)

6、点击保存后点击刷新按钮。

7、这时候就可以看到刚刚创建的配置了。

8、Ctrl + Shift + P,打开命令窗口,输入ssh connect to host,选择第一个,

9、选择刚刚创建好的那个配置。

10、询问是否保存known_hosts,选择Continue。

11、输入服务器上用户的密码

12、该用户第一次访问该服务器可以看到该提示信息,耐心等待,这时是插件在服务器上面安装需要的依赖,大约会占用服务器150mb左右的空间。

13.如果长时间都一直是该情况,可以使用Ctrl + Shift + P,打开命令窗口,输入reload window来重新加载窗口(会要求你重新手动输入密码)。

14.最终显示如下页面就代表已经连接成功了。

二、设置免密登录

1、生成ssh使用的公钥/密钥对。(公钥给服务器用,秘钥给自己客户端用)

在[vscode终端](https://so.csdn.net/so/search?q=vscode%E7%BB%88%E7%AB%AF&spm=1001.2101.3001.7020)或者cmd中进行如下代码输入

(1)直接使用终端在用户本机生成公钥和私钥。输入命令ssh-keygen -t rsa:

undefined 复制代码
ssh-keygen -t rsa

 
 
 代码解读

(2)终端会出现以下提示,可以自己定义密钥名(就是自己定义文件所在位置),也可以直接跳过,默认在C盘中的C:\Users\"用户名"\.ssh中。

cobol 复制代码
 
 
 
  
* 
     
     
     
      
      
      
     
     
     

     
     
     

      
      
      
       
       Generating public
       
       /private rsa 
       
       key pair.
      
      
      
     
     
     

  
* 
     
     
     
      
      
      
     
     
     

     
     
     

      
      
      
       
       Enter 
       
       file 
       
       in which 
       
       to save the 
       
       key (
       
       /Users
       
       /~your-local-username~
       
       /.ssh
       
       /id_rsa):
      
      
      
     
     
     

 

 
 
 代码解读

生成如下配置文件:

ps:

这里id_rsa.pub就是公钥,在服务器端使用;

id_rsa是私钥在用户端使用;

config文件是之前设置的hostname、port、user的那个文件

(3)接下来终端会提示输入密码 passphrase,这个密码为生成私钥的密码,将来防止私钥被其他人盗用。这里可以设定,也可以不输入任何密码,直接回车,再次提示输入密码,再次回车。生成新的密钥。

(4)在服务器路径下创建.ssh文件夹

bash 复制代码
 
 
 
  
* 
     
     
     
      
      
      
     
     
     

     
     
     

      
      
       
       
       # 创建目录
      
      
      
     
     
     

  
* 
     
     
     
      
      
      
     
     
     

     
     
     

      
      
       
       
       mkdir ~/.ssh
      
      
      
     
     
     

  
* 
     
     
     
      
      
      
     
     
     

     
     
     

      
      
       
       
       # 进入目录
      
      
      
     
     
     

  
* 
     
     
     
      
      
      
     
     
     

     
     
     

      
      
       
       
       cd ~/.ssh
      
      
      
     
     
     

  
* 
     
     
     
      
      
      
     
     
     

     
     
     

      
      
       
       
       # 创建 authorized_keys 文件
      
      
      
     
     
     

  
* 
     
     
     
      
      
      
     
     
     

     
     
     

      
      
       
       
       touch authorized_keys
      
      
      
     
     
     

 

 
 
 代码解读
csharp 复制代码
# 把公钥文件id_rsa.pub拷贝到需要登录的服务器上(存储路径可以随意,但是之后加入到另一个文件尾部的时候注意路径地址。)
 
 
 代码解读

(5)将公钥id_rsa.pub填充到authorized_keys尾部

bash 复制代码
cat /home/id_rsa.pub >> ~/.ssh/authorized_keys
 
 
 代码解读

(6)配置 SSH 客户端**(!!!!这里可以不设置。如果之前的步骤已经可以免密连接服务器,那这一步就不设置了!!!!)**

打开你的 SSH 客户端(本机)配置文件(也就是前面生成的config文件,一般在C:\Users\YourUsername\.ssh\config),添加配置(IdentityFile 私钥文件路径),以指定使用哪个私钥文件。下图红框为我添加的内容。

配置完成后即可免密远程登录其他服务器啦!!!~~~

三、删除ssh连接(慎用!!!删除了建立的连接就没有了!!)

需要在之前配置的文件夹中,找到config文件:

打开config文件删除内容即可,然后保存刷新。

参考博客:

https://blog.csdn.net/savet/article/details/131683156

服务器免密登录-CSDN博客

VSCode配置 SSH连接远程服务器+免密连接教程 - 知乎

Linux免密登录远程服务器_id_rsa.pub linux-CSDN博客

VSCode SSH远程连接与删除_vscode删除远程连接-CSDN博客

相关推荐
xuefeiniao23 分钟前
PHP2Shell漏洞修复
运维·服务器·php
便利店10242 小时前
系统活动一抓留存!深入 Linux C/C++ 调试工具之 sysdig
linux·运维·服务器·sysdig
g3voip2 小时前
工业防水电话到底怎么选?隧道、管廊与码头的需求差异
服务器·网络·信息与通信·ip
.Bryce.3 小时前
从强化学习到Agentic RL:让Agent在“干活“中自己变聪明
服务器·网络·agent·rag·agentic rl
ZYH_06013 小时前
rhcsa课程复习题
服务器·bash
用户565190394493 小时前
高危 编号99999漏洞情报(26年8-10月) 多个严重漏洞:PHP执行远程控制代码 / Linux虚拟机-宿主越界(CVE-2026-99999...
服务器
云飞云共享云桌面3 小时前
广东东莞制造工厂10人共享一台三维设计服务器
运维·服务器·3d·自动化·制造
hz567895 小时前
企业视频会议系统方案:总部与分支机构高效协同如何落地?
运维·服务器·网络·安全·实时音视频·信息与通信
网络小江5 小时前
组网第27课:ARP 的能与不能——免费 ARP、代理 ARP 与 ARP 欺骗
服务器·网络·网络安全·负载均衡·免费arp