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博客

相关推荐
Android系统攻城狮9 分钟前
Linux Gstreamer深度解析之gst_audio_channel_reorder_map调用流程与实战(十八)
linux·运维·服务器·音视频进阶·gstreamer音视频进阶
cc_yy_zh40 分钟前
学习使用kali抓包
服务器·学习·php
盛世宏博智慧档案1 小时前
户外配电柜为什么要装POE供电以太网温湿度传感器?
服务器·网络·人工智能·监控·温湿度·配电柜
新时代牛马1 小时前
Linux 防火墙:nftables 与iptables 兼容层
linux·运维·服务器
宁静致远20211 小时前
VSCode 开发 STM32 的 Keil工程 (Keil Assistant)
vscode·stm32·stm32cubeide
是逍遥子没错1 小时前
一个斜杠,击穿整座网关:API网关路径前缀绕过认证实战
运维·服务器·web安全·网络安全·渗透测试·系统安全
Fluxart.ai2 小时前
GPT Image 2.5 有使用次数限制吗?额度、并发、频率限制说明
服务器·前端·gpt
其实防守也摸鱼2 小时前
每天一个知识点——RCE漏洞
运维·服务器·数据库·windows·安全·github·漏洞
晴天162 小时前
VSCodium 项目介绍
前端·javascript·vscode
浅念-3 小时前
C++ Protobuf 入门实战:基于通讯录项目吃透proto3语法与序列化
linux·服务器·网络·c++·protobuf·proto·proto3