我可以使用我的 Windows 计算机 ssh 到服务器。在那里,我将我的 Linux 计算机的 ssh 密钥 ( ~/.ssh/id_rsa.pub
) 放入~/.ssh/authorized_keys
文件中。但是,我无法使用我的 Linux 计算机 ssh 到服务器:
$ ssh [email protected]
sign_and_send_pubkey: signing failed for RSA "/home/xyz/.ssh/id_rsa" from agent: agent refused operation
[email protected]: Permission denied (publickey).
我可能做错了什么?
编辑:
我刚刚申请
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
这对问题没有影响。
答案1
我必须更改id_rsa
和的权限id_rsa.pub
:
chmod 700 id_rsa*
答案2
正确的权限是
chmod 600 id_rsa # rw-------
chmod 644 id_rsa.pub # rw-r--r--
或使用符号权限:
chmod u=rw,go= id_rsa
chmod u=rw,go=r id_rsa.pub
.pub 文件是公钥,任何人都可以读取。只有私钥的权限必须仅限于所有者。