Mac OSX升级到13.0.1后,Git无法拉取代码, 提示
Unable to negotiate with xxxxx port 8888: no matching host key type found. Their offer: ssh-rsa,ssh-dss
fatal: 无法读取远程仓库。
请确认您有正确的访问权限并且仓库存在。
由于新版OSX系统升级了Open SSH,OpenSSH 7.0以后的版本不再支持ssh-dss (DSA)算法,解决方法是增加选项-oHostKeyAlgorithms=+ssh-dss,即可成功解决
ssh git@192.168.1.1 -p 8888 -v -oHostKeyAlgorithms=+ssh-dss
/Users/name/.ssh 目录下面的known_hosts里面的对应ip记录也需要删掉
每次指定算法, 也比较麻烦,类似tower等git管理工具不太方便
我们可以修改/Users/name/.ssh/config文件如下即可
host *
HostKeyAlgorithms +ssh-rsa
PubkeyAcceptedKeyTypes +ssh-rsa