📅  最后修改于: 2023-12-03 15:05:21.670000             🧑  作者: Mango
在使用 SSH 连接服务器时,可能会出现以下错误:
Permission denied (publickey).
这种错误通常是由于 SSH 私钥与服务器不匹配所导致的。
以下是一些可能的解决方案:
确保你使用的是正确的 SSH 私钥。你可以通过以下命令查看 SSH 私钥的权限和所有者:
$ ls -l ~/.ssh/id_rsa
-rw------- 1 user staff 1675 Dec 22 00:05 /Users/user/.ssh/id_rsa
确保 SSH 私钥的权限为 600,所有者为当前用户。
确保你已将公钥添加到服务器的 authorized_keys
文件中。你可以通过以下命令将公钥添加到该文件中:
$ cat ~/.ssh/id_rsa.pub | ssh user@server "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"
如果你使用密码身份验证,则需要启用密码身份验证。你可以通过以下命令打开 sshd_config
文件并查找以下行:
#PasswordAuthentication yes
将 #
替换为一个空格,然后保存文件并重启 SSH 服务。
如果你正在使用 SSH 代理,请确保代理服务器已正确配置,并且代理用户具有适当的权限。
SSH 错误权限被拒绝(公钥)通常是由于 SSH 私钥与服务器不匹配所导致的。可以通过确定正确的 SSH 私钥、添加公钥到服务器、启用密码身份验证或确保 SSH 代理已正确配置来解决这个问题。