SSH 密钥操作经历与 VSCode 远程连接“找不到ssh安装”解决

目录

    • [1. VSCode远程连接时提示"找不到ssh安装"](#1. VSCode远程连接时提示“找不到ssh安装”)
    • [2. 关于公钥与密钥](#2. 关于公钥与密钥)
    • [3. 测试连接](#3. 测试连接)
    • [4. 查看哪个密钥被使用](#4. 查看哪个密钥被使用)
    • [5. 如果没有密钥](#5. 如果没有密钥)

1. VSCode远程连接时提示"找不到ssh安装"

  1. 打开设置------可选功能,添加OpenSSH客户端,安装的很慢,耐心等,或者手动下载(暂时不提)
  2. 重启下电脑

2. 关于公钥与密钥

  1. 在GitHub,Gitee等平台进行ssh下载等操作需要添加ssh密钥,相当于输入个密码,跟本机保持配对

  2. 生成公钥

    bash 复制代码
    ssh-keygen -t ed25519 -C "Gitee SSH Key"
    • -t:key类型
    • -C:注释
  3. 生成公钥的同时也会生成密钥,也就是如下两个文件:id_ed25519 ``id_ed25519.pub,前者是密钥,后者是公钥,位于C:\Users\用户名\.ssh

  4. 查看公钥:用记事本打开,或者

    bash 复制代码
     cat ~/.ssh/id_ed25519.pub

    复制下来

  5. 在GitHub等平台的设置界面找到ssh密钥,添加公钥即可

3. 测试连接

bash 复制代码
ssh -T git@github.com
  1. 如果成功,将看到类似如下的欢迎信息:
bash 复制代码
Hi {YourUsername}! You've successfully authenticated, but GitHub does not provide shell access.
  1. 可能出现的问题

出现如下信息:

bash 复制代码
Bad permissions. Try removing permissions for user: BUILTIN\\Users (S-1-5-32-545) on file C:/Users/用户名/.ssh/config.
Bad owner or permissions on C:\\Users\\用户名/.ssh/config

这是因为.ssh/config.ssh/id_ed25519权限太开放的原因

对这两个文件以及.ssh文件夹都进行如下操作:

  1. 右键------属性------安全------高级
  2. 点击左下角禁用继承------从此对象中删除所有已继承的权限------确定------
  3. 此时组或用户名应该是空白的,点击编辑------添加,输入你的用户名,点击检查名称------确定

4. 查看哪个密钥被使用

我不知道怎么弄的有多个密钥,想简化一下

  1. 法一:使用-v参数查看详细连接过程

    bash 复制代码
    ssh -Tv git@gitee.com

    查看日志中哪个密钥文件后面跟着密钥指纹(SHA256开头的一串很长的哈希值)

  2. 法二:制定密钥进行连接测试

    bash 复制代码
    ssh -T git@github.com -i ~/.ssh/你的私钥文件名

    看看哪个能成功就是哪个

没有用的公钥和密钥就可以删了。删错了问题也不大,重新创建公钥,然后在平台上绑定公钥就好了

5. 如果没有密钥

如果没有密钥的话,每次连接都要输入密码。我用VSCode连接项目组的服务器或者腾讯云服务器时用ssh连接,但是用的是需要输入密码来认证


相关推荐
Promise微笑1 分钟前
红外分辨率 160×120、320×240、384×288 与 640×480实战选型指南
大数据·运维·人工智能·物联网
handsome091620 分钟前
苹果电脑可以使用yunedit-ssh代替winscp
ssh·管理linux文件
云飞云共享云桌面1 小时前
单机建模卡顿运维繁琐!中小型机械制造厂云飞云 3D 云桌面落地
运维·服务器·网络·3d·自动化·电脑·负载均衡
zandy10112 小时前
体验家 XMPlus 批量操作与自动化工作流引擎:让大规模运营从手动执行走向规则驱动
大数据·运维·自动化
Sagittarius_A*3 小时前
Docker:渗透前置容器化核心基础
运维·安全·docker·容器
阿米亚波4 小时前
【EVE-NG 实战】防火墙基础(VLAN · VRRP · NAT · ACL · 静态路由)
运维·网络·笔记·网络协议·计算机网络·网络安全·运维开发
无糖冰可乐215 小时前
安装wsl2,并链接Windows上的vscode运行项目
pytorch·vscode·python·pip
日取其半万世不竭5 小时前
云服务器迁移怎么少停机?DNS 切换前后的完整清单
运维·服务器
FREEDOM_X5 小时前
Linux 多线程编程——总结
java·linux·运维·ubuntu
名字还没想好☜5 小时前
Docker 多阶段构建:把镜像从 1.2GB 砍到 15MB
运维·docker·容器·多阶段构建·镜像优化