Unable to negotiate with 172.16.28.137 port 22: no matching host key type found. Their offer: ssh-rsa,ssh-dss
ssh连接服务器报错“Unable to negotiate with 172.16.28.137 port 22: no matching host key type found. Their offer: ssh-rsa,ssh-dss”
原因是 Terminal 找不到支持的密钥交换方法,因为新版 Openssh 中认为 SHA1 这种 hash 散列算法过于薄弱,已经不再支持,所以我们需要手动去允许对于 SHA1 的支持。
解决方案1:
ssh -p 22 -oHostKeyAlgorithms=+ssh-dss ttzo@172.16.28.137
解决方案2:
在生成公钥的 ~/.ssh 文件夹下,(如果没有的话)新建一个 config 文件( config 文件没有后缀),文件中添加如下内容:
Host *
HostkeyAlgorithms +ssh-rsa
PubkeyAcceptedKeyTypes +ssh-rsa