macOS升级到Ventura 后vscode远程开发ssh链接失败

news/2024/11/8 0:32:49/

背景

最近公司IT让升级到mac系统,说之前的老版本太久了,因此要被迫升级macOS系统,这是一次重大升级,升级之后加大了和apple其他设备的互通性,升级完成之后确实和iOS更像了。不过我升级后发现我的vscode连不上开发机了,因为我个人习惯用vscode远程到我的linux开发机开发,这样我不管在家里还是在哪里只要有电脑就可以开发,不依赖本地环境。

问题重现

mac升级到Ventura 13之后,发现我的远程开发机无法连接,我昨天下班前还可以,因此怀疑是系统升级导致的问题,查看连接错误日志如下:

An error occurred while trying to establish an SSH connection with SSH keys to ‘ip:22’

我个人的ssh配置文件如下:

Host ip-开发机HostName ip # 远程开发机IPUser username # 用户名Port 22 # 端口IdentityFile /Users/xxxx/.ssh/id_rsa #本地私钥

问题解决

遇到问题不慌直接google搜索问题vscode-remote ssh key macOS ventura,在stackoverflow遇到和我一样的用户: https://stackoverflow.com/questions/74215881/visual-studio-2022-wont-connect-via-ssh-on-macos-after-upgrading-to-ventura,被告知需要使用新增2个配置项:

Host ip-开发机HostName ip # 远程开发机IPUser username # 用户名Port 22 # 端口IdentityFile /Users/xxxx/.ssh/id_rsa #本地私钥HostkeyAlgorithms +ssh-rsa # 新增配置项1PubkeyAcceptedAlgorithms +ssh-rsa # 新增配置项2

并且最后提示:

macOS Monterey and older versions used OpenSSH v8.6 or older, respectively.

问题原因

因为macOS使用了开源软件openSSH,而Ventura使用openSSH是9.0版本,openSSH-8.8版本开始默认情况下禁止RSA签名使用sha-1 hash算法,因此不加上述配置的话就无法连接。

This release disables RSA signatures using the SHA-1 hash algorithm by default

因此需要手动指定支持上述算法。

为什么openSSH 默认情况下禁止使用SHA-1作为rsa的签名算法?

RSA使用SHA-1哈希算法作为数字签名是有安全漏洞风险的,因为SHA-1算法已经被证明不是足够强度的哈希算法,可以被攻击者用于伪造数字签名。
目前,RSA使用SHA-256、SHA-384、SHA-512等较为安全的哈希算法作为数字签名是一个更好的选择,这些算法在实际应用中已被广泛采用。
除了SHA-256/SHA-384/SHA-512哈希算法外,还有基于椭圆曲线的签名算法,例如ECDSA算法,已被广泛应用于数字证书和电子签名等应用中。
在选择数字签名算法时,需要考虑许多因素,包括其安全性、性能、兼容性和标准性等。最好的方法是根据自己的具体需求,选择适合自己的应用程序的最佳签名算法。


http://www.ppmy.cn/news/40584.html

相关文章

前端项目-06-search模块商品列表-面包屑-品牌-属性开发

目录 1-静态页面的开发 2-获取搜索页面数据 2.1-api定义接口相关方法 2.2-定义发起请求数据 2.2-定义发起请求的方法 2.3-vuex中获取数据 2.4-监听路由变化重置请求数据 3-动态渲染商品列表 4-动态渲染面包屑 4.1-渲染面包屑数据​编辑 4.2-点击面包屑x触发事件 5-动…

自动化工具 pytest 内核测试平台落地初体验

测试平台,有人说它鸡肋,有人说它有用,有人说它轮子,众说纷纭,不如从自身出发,考虑是否要做测试平台: 第 1 阶段,用 Pythonrequests 写接口自动化。 第 2 阶段,选择 unit…

Excel技能之数据安全,老板让我加个锁

金融、管理、财务各个领域和行业,重要的数据,没有保护手段,像在大街上裸奔一样。数据安全的重要性,必须刻在骨子里。 机密文件、商业文件、财务报表、销售业绩、工资,以及不想让别人修改的只读文件,都可以…

vue 高德地图设置鼠标样式

高德地图JS API 2.0 设置鼠标样式在线示例 首先&#xff0c;在 index.html 中引入图标&#xff1a; <link rel"stylesheet" href"https://at.alicdn.com/t/font_873139_0v65kqy674.css" >封装工具文件 utils/map.js &#xff1a; export default …

2023最新MYSQL面试题总结

​ MYSQL 简介&#xff1a; MySQL数据库是一种开源的关系型数据库管理系统&#xff0c;它支持多用户、多线程、多个存储引擎&#xff0c;可以在各种操作系统上运行。MySQL的优点包括开源免费、性能高、稳定可靠、支持多种操作系统和编程语言、易于使用和管理等。MySQL的缺点包…

C++ 不常用的奇淫巧计

leetcode-剑指offerII 071.按权重生成随机数 给定一个正整数数组 w &#xff0c;其中 w[i] 代表下标 i 的权重&#xff08;下标从 0 开始&#xff09;&#xff0c;请写一个函数 pickIndex &#xff0c;它可以随机地获取下标 i&#xff0c;选取下标 i 的概率与 w[i] 成正比。 …

跨越DDD从理论到工程落地的鸿沟

DDD作为一种优秀的设计思想&#xff0c;的确为复杂业务治理带来了曙光。然而因为DDD本身难以掌握&#xff0c;很容易造成DDD从理论到工程落地之间出现巨大的鸿沟。就像电影里面的桥段&#xff0c;只谈DDD理论姿势很优美&#xff0c;一旦工程落地就跪了…所以DDD的项目&#xff…

【开源项目】ELADMIN 后台管理系统

项目简介 一个基于 Spring Boot 2.1.0 、 Spring Boot Jpa、 JWT、Spring Security、Redis、Vue的前后端分离的后台管理系统 开发文档&#xff1a; https://eladmin.vip 体验地址&#xff1a; ELADMIN 账号密码&#xff1a; admin / 123456 项目源码 后端源码前端源码git…