Mac更新Ventura 13.4.1 后ssh无法链接gitlab

534 阅读1分钟

原因

昨天升级了mac os到最新的Ventura 13.4.1。今早在公司发现无法拉取远程git代码,提示rsa连接失败。 原因是由于Mac 13.4.1中默认的ssh版本是9.0,而9.0默认关闭了ssh-rsa算法,所以提示gitlab远程无法连接。 通过下面的命令可以查看openSSH的版本:

ssh -V

正常的输出是:

OpenSSH_9.0p1, LibreSSL 3.3.6

解决方式

修改/etc/ssh/sshd_config,添加如下的开启ssh-rsa即可:

HostkeyAlgorithms +ssh-rsa  
PubkeyAcceptedAlgorithms +ssh-rsa

这里记得使用sudo vim /etc/ssh/sshd_config,否则会提示无法修改该文件。 修改之后如下图所示:

screenshot-20230703-110632.png

验证

重新执行git pull,发现已经能正常拉取远程分支的代码了。