在家里macbook通过ssh登录我的服务器时发现登录失败,报错如下:
{user}@{ip}: Permission denied (publickey,gssapi-keyex,gssapi-with-mic).
奇怪的是我记得之前登录是正常的🙃
在ssh命令后加上-v后发现其中有一条信息:
$ ssh -p 22 {user}@{ip} -v
...
debug1: send_pubkey_test: no mutual signature algorithm
...
这意味着客户端和服务器之间没有共同支持的签名算法。其他机器登录正常,手动编辑~/.ssh/config文件增加如下内容确保客户端也使用 ssh-rsa 算法:
Host {}
Port 22
HostkeyAlgorithms +ssh-rsa
PubkeyAcceptedAlgorithms +ssh-rsa
再次尝试后登录成功,问题解决✌🏻