Mac升级Ventura 13.X后无法执行Git操作,显示无法连接到到仓库。

原因

原因可能为:升级系统后,Ventura系统附带OpenSSH_9.0p1禁用了基于SHA-1哈希算法的 RSA 签名。

https://www.droidwin.com/ssh-not-working-in-macos-ventura-fix/

用户可以终端查看当前openssh版本,该问题常见于>8.8版本时。

ssh -V

解决方法:

1、在生成公钥的~/.ssh文件夹下,

vim config

2、注意:config文件没有后缀,文件末尾中添加如下内容:

Host *
	HostkeyAlgorithms +ssh-rsa
	PubkeyAcceptedKeyTypes +ssh-rsa

有些用户修改~/.ssh配置文件不生效的情况,可能是配置了Host的配置。可以尝试添加上述配置到系统/etc/ssh/ssh_config文件解决。

更推荐的秘钥加密形式

以上是rsa算法密钥的情况下的解决办法,现在更推荐ED25519算法来生成密钥。因为rsa有缺陷

1.查看已存在的SSH密钥

在生成新的 SSH 密钥前,请先确认是否需要使用本地已生成的SSH密钥,SSH 密钥对一般存放在本地用户的根目录下。

在你的计算机命令行中执行以下语句,判断是否已经存在本地公钥。如果返回一长串以 ssh-ed25519 或 ssh-rsa 开头的字符串, 说明已存在本地公钥,你可以跳过「生成 SSH 密钥」步骤。

算法类型公钥私钥命令
ED25519(推荐)id_ed25519.pubid_ed25519ssh-keygen -t ed25519
RSAid_rsa.pubid_rsassh-keygen -t rsa
ECDSAid_ecdsa.pubid_ecdsassh-keygen -t ecdsa

Linux、Mac 可以直接使用以下命令查看已生成的公钥,Windows 用户在 WSL(需要 windows10 或以上)或 Git Bash下使用以下命令查看已生成公钥:

ED25519 算法

cat ~/.ssh/id_ed25519.pub

RSA 算法

cat ~/.ssh/id_rsa.pub

ECDSA 算法

cat ~/.ssh/id_ecdsa.pub
2.生成 SSH 密钥 (以ED25519算法为例)

如果本地没有已存在的SSH密钥,或需要生成新的 SSH 密钥,请按如下步骤操作:

1、打开终端( windows 请使用 WSL或 Git Bash);

2、运行ssh-keygen -t,然后输入密钥算法类型和可选的注释。这个注释会出现在.pub文件中(与认证无关),一般可使用邮箱作为注释内容。

# 如果不想添加注释的话,输入下面的命令,一路回车即可。
ssh-keygen -t ed25519

密钥默认生成路径:/home/user/.ssh/id_ed25519,公钥与之对应为:/home/user/.ssh/id_ed25519.pub

3.设置config
$ vim ~/.ssh/config

# 写入如下的内容,以下三种类型选一个即可,不允许全部存在。
# 「+」后面的算法类型,可以看一下生成的id_rsa.pub|id_ed25519.pub|id_ecdsa.pub中的前缀
# *************************(重要)*************************

# 注:Host * 只是为了便捷操作,如本地有jumper等配置,建议指定具体的域名,例如Host git.sankuai.com | Host git.dianpingoa.com 依据你的ssh链接来配置即可。
# rsa
Host *
    HostkeyAlgorithms +ssh-rsa
    PubkeyAcceptedKeyTypes +ssh-rsa
    
# ed25519
Host *
    HostkeyAlgorithms +ssh-ed25519
    PubkeyAcceptedKeyTypes +ssh-ed25519
    
# ecdsa
Host *
    HostkeyAlgorithms +ecdsa-sha2-nistp256
    PubkeyAcceptedKeyTypes +ecdsa-sha2-nistp256
   
   
$ rm -rf ~/.ssh/known_hosts

$ git fetch origin
# 根据提示输入yes
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

moletop

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值