no matching host key type found. Their offer: ssh-rsa,ssh-dss

SSH登录或者用ssh方式执行git clone时有时会提示“no matching host key type found. Their offer: ssh-rsa,ssh-dss“,原因是安全规则导致服务器的key的类型不被客户端识别。

解决方法是设置SSH客户端,允许连接这样的服务器。无论linux或者windows,配置文件都是 ~/.ssh/config,有的话就修改,没有就创建这个文件,加入如下内容即可:

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

如果是命令行执行ssh,也可以在命令行中增加选项达到相同效果:

ssh -oHostKeyAlgorithms=+ssh-dss