SSH密钥认证登陆流程(Vscode连接到远程)

目录

    • 前言
    • 连接远程步骤
      • 1. 下载工具包wsCli到本地机器
      • 2. 本地机器上生成ssh密钥
      • 3. 在服务器上安装公钥
      • 4. vscode连接到远程
    • 参考资料

前言

SSH(Secure Shell)是一种用于远程登录和安全传输数据的网络协议。它提供了两种主要的远程连接方式:

  1. 密码认证:使用用户名和密码进行身份验证。在这种方式下,用户需要提供正确的用户名和密码才能成功连接到远程主机。这是最常见的认证方式,但安全性较低,因为密码可能会被猜测或通过网络截获。

  2. 公钥认证:使用公钥和私钥进行身份验证。在这种方式下,用户需要生成一对密钥,包括公钥和私钥。用户将公钥上传到远程主机上,而私钥保留在本地。当用户尝试连接到远程主机时,远程主机会使用存储的公钥进行验证。如果公钥验证成功,用户将被授权访问。公钥认证提供了更高的安全性,因为私钥通常比密码更难以猜测。

这两种方式可以根据用户的需求和安全要求进行选择。公钥认证通常被认为是更安全和推荐的方式,特别是在需要远程访问的生产环境中。

连接远程步骤

在这里插入图片描述

1. 下载工具包wsCli到本地机器

下载工具包到本地机器,解压后,把相应的wsCli程序放在系统目录下(比如windows是C:\Windows下,linux/macOS放在/usr/local/bin下)。

也可以放在任意目录下,但是需要将这目录添加到环境变量中(WIN+R输入:control userpasswords回车,点击更改我的环境变量):
在这里插入图片描述
添加环境变量,在用户变量->Path中添加,到wsCli文件的上一级目录:
在这里插入图片描述

2. 本地机器上生成ssh密钥

在命令行执行ssh-keygen来创建密钥对,默认情况下,会生成一个私钥(id_rsa)和一个公钥(id_rsa.pub)。私钥通常不建议随意发送给他人,因为它包含敏感信息。
在这里插入图片描述
在这里插入图片描述

3. 在服务器上安装公钥

拷贝id_rsa.pub中的公钥,并添加到authorized_keys中:

mkdir -p ~/.ssh
# {YOUR_PUB_KEY}是拷贝的公钥,以ssh-rsa开头
echo "{YOUR_PUB_KEY}" >> ~/.ssh/authorized_keys

如此便完成了公钥的安装。 此外,为了确保连接成功,输入如下指令以保证以下文件权限正确:

chmod 600 authorized_keys 
chmod 700 ~/.ssh

在终端详情页拷贝ssh命令,即可在本地terminal连接到远程(如果连接不上可以重启一下电脑试试)。

4. vscode连接到远程

在vscode上进行远程连接,需要在服务器上安装与本地相同版本的vscode

1.在本地vscode中安装插件Remote-SSH
在这里插入图片描述
2.本地下载vscode安装包
在vscode的帮助->关于中找到commitID
在这里插入图片描述
复制下面这个链接下载安装包:

# ${COMMIT_ID}换成自己的commitID
https://update.code.visualstudio.com/commit:${COMMIT_ID}/server-linux-x64/stable

然后得到下面这个压缩包:
在这里插入图片描述
3.在服务器上传vscode
在服务器中创建.vscode-server/bin文件夹,并把压缩包上传:

mkdir -p ~/.vscode-server/bin
cd ~/.vscode-server/bin
# 上传压缩包并解压,放到以commitID命名的文件夹下
# ${COMMIT_ID}替换成自己的commitID
tar -zxf vscode-server-linux-x64.tar.gz
mv vscode-server-linux-x64/* ${COMMIT_ID}

最后${COMMIT_ID}文件夹下为以下文件,删除其他没用的文件。在这里插入图片描述
4.将ssh命令粘贴到连接命令中
在这里插入图片描述
得到一个config文件,如果windows系统,需要将wscli修改成本地绝对路径:
在这里插入图片描述
然后点击+号连接到远程。

参考资料

解决 Windows 端 VS Code “无法与 “…“ 建立连接:XHR failed.” 问题

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/475718.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

原创详解OpenAI Sora是什么?技术先进在哪里?能够带来什么影响?附中英文技术文档

一:Sora是什么 Sora是一个文本到视频的模型,由美国的人工智能研究机构OpenAI开发。Sora可以根据描述性的文本提示,生成高质量的视频,也可以根据已有的视频,向前或向后延伸,生成更长的视频。 Sora的主要功…

GuitarPro8.1官方中文解锁版激活许可证24位下载

Guitar Pro 8.1官方中文解锁版是一款受到吉他手和音乐家欢迎的软件程序。它允许用户创建和编辑乐谱、吉他谱和其他音乐成绩,并使用虚拟乐器回放他们的作品。Guitar Pro具有广泛的工具和功能,包括符号编辑器、和弦和音阶库、调音器、节拍器等等。它还支持…

网络编程_TCP通信综合练习:

1 //client:: public class Client {public static void main(String[] args) throws IOException {//多次发送数据//创建socket对象,填写服务器的ip以及端口Socket snew Socket("127.0.0.1",10000);//获取输出流OutputStream op s.getOutput…

【MySQL】学习多表查询和笛卡尔积

🌈个人主页: Aileen_0v0 🔥热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法 ​💫个人格言:“没有罗马,那就自己创造罗马~” #mermaid-svg-N8PeTKG6uLu4bJuM {font-family:"trebuchet ms",verdana,arial,sans-serif;font-siz…

打开ps显示找不到dll怎么办?这四种方法可快速修复

在计算机操作系统中,当执行某程序或运行特定软件时,如果系统提示“ps显示找不到dll文件”,这其实是一个较为常见的问题现象。动态链接库(DLL)文件是Windows操作系统中不可或缺的重要组件,它包含了大量可被多…

js设计模式:单例模式

作用: 保证一个类只有一个实例,并且提供一个全局的访问位置。 可以用来实现全局的一些状态管理或者独一无二的数据 示例: class Wjt{constructor(name,idNumber,gender){this.name namethis.idNumber idNumberthis.gender gender}//可以直接使用Wjt调用的静态方法static …

【Java】图解 JVM 垃圾回收(一):GC 判断策略、引用类型、垃圾回收算法

图解 JVM 垃圾回收(一) 1.前言1.1 什么是垃圾1.2 内存溢出和内存泄漏 2.垃圾回收的定义与重要性3.GC 判断策略3.1 引用计数算法3.2 可达性分析算法 4.引用类型5.垃圾回收算法5.1 标记-复制(Copying)5.2 标记-清除(Mark…

C#上位机与三菱PLC的通信06--MC协议之QnA-3E报文测试

1、A-3E报文回顾 1、存储区分类及访问规则 2、命令类型 命令由主命令子命令组成 3、报文结构 2、启动mc服务器 3、创建VS项目 这节继续使用上节的VS2022的项目,增加一个方法 MCTestA3E(),具体怎么创建项目,见上节的过程。C#上位机与三菱…

2011-2021年商业银行财务指标面板数据

2011-2021年商业银行财务指标面板数据 1、时间:2011-2021年 2、来源:银行年报 3、指标:银行代码、银行中文简称、银行中文全称、银行英文全称、国家代码、银行性质、会计期间、会计年度、资产总计、净资产、负债总计、营业收入、营业利润、…

文物预防性保护在行动,株洲博物馆龙展文物安然无恙

一、龙文物收藏与甲辰龙年生肖文物联展 在株洲博物馆,50多个关于龙的文物悄悄的表述了几千年的故事。这类青铜器、金银、陶器不仅仅有着中华文化的历史文化,并且在岁月的长河中保存着独特的艺术价值。每一件文物似乎都是一条历史的龙脉,这将…

ClickHouse监控及备份

第1章 ClickHouse监控概述 第2章 Prometheus&Grafana的安装 第3章 ClickHouse配置 第4章 Grafana集成Prometheus 第5章 备份及恢复

哪款洗地机清洁力强?清洁力强的洗地机推荐

洗地机是一种结合了吸尘和洗地功能清洁机器,适用于硬质地面清洗同时吸干污水,并将污水带离现场。它具有高效节能且环保等优点,根据其结构和功能,洗地机可以分为半自动洗地机、全自动洗地机、手推式洗地机和驾驶式洗地机等类型。那…