已经添加公钥还提示Permission denied (publickey)
时间: 2023-11-08 22:48:00 浏览: 82
您好!如果您已经添加了公钥,但仍然收到 "Permission denied (publickey)" 错误提示,可能有几个原因导致这个问题:
1. 验证公钥的正确性:请确保您添加的公钥与您的私钥匹配,并且正确地复制到了目标主机的授权文件(如~/.ssh/authorized_keys)中。
2. 文件和目录权限:请确保目标主机上相关目录和文件的权限正确设置。一般来说,~/.ssh 目录的权限应设置为 700,authorized_keys 文件的权限应设置为 600。您可以使用以下命令进行设置:
```
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
```
3. SSH 服务配置:检查目标主机上的 SSH 服务配置文件(如 /etc/ssh/sshd_config)是否正确配置。确保以下配置项没有被注释掉:
```
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
```
如果您进行了修改,请重启 SSH 服务使其生效。
4. 其他认证方式:请检查您连接目标主机时是否指定了正确的密钥文件。您可以使用 `-i` 参数指定私钥文件的路径:
```
ssh -i /path/to/private_key user@host
```
确保 `/path/to/private_key` 指定的是您添加到目标主机上的正确私钥文件路径。
如果以上解决方法都不起作用,可能还有其他问题导致了该错误。您可以在连接时使用 `-v` 参数打开详细的调试输出,以便进一步排查问题:
```
ssh -v user@host
```
这将输出 SSH 连接的详细日志,您可以根据日志中的信息来查找问题所在。
希望这些信息对您有所帮助!如有任何进一步的问题,请随时提问。
阅读全文