ssh-copy-id后还是要密码
时间: 2023-09-30 14:11:43 浏览: 260
如果你使用 `ssh-copy-id` 命令将 SSH 公钥复制到远程服务器上,并且仍然需要输入密码才能登录,则可能有以下几种原因:
1. 没有正确执行 `ssh-copy-id` 命令。请确保你已经在本地计算机上执行了以下命令:
```
ssh-copy-id username@remote_host
```
其中 `username` 是你在远程服务器上的用户名,`remote_host` 是远程服务器的 IP 地址或主机名。
2. 你的 SSH 公钥可能没有被正确添加到远程服务器的 `authorized_keys` 文件中。请登录到远程服务器,检查 `~/.ssh/authorized_keys` 文件是否包含你的 SSH 公钥。如果没有,请使用以下命令将其添加到文件中:
```
cat ~/.ssh/id_rsa.pub | ssh username@remote_host "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"
```
其中 `id_rsa.pub` 是你的 SSH 公钥文件的名称,`username` 是你在远程服务器上的用户名,`remote_host` 是远程服务器的 IP 地址或主机名。
3. 可能是因为远程服务器的 SSH 配置不允许公钥登录。请确保在远程服务器的 SSH 配置文件 `/etc/ssh/sshd_config` 中启用了公钥登录,并且 `PubkeyAuthentication` 选项设置为 `yes`。如果修改了配置文件,请重新加载 SSH 服务以使更改生效。
如果你仍然需要输入密码才能登录远程服务器,请检查以上步骤并确保没有遗漏任何步骤。
阅读全文