为 Linux 服务器添加 ssh 密钥文件 - 密钥已生成,然后呢?

为 Linux 服务器添加 ssh 密钥文件 - 密钥已生成,然后呢?

我想要自己搭建一个CentOS7服务器。

现在我已经按照此链接中提到的步骤操作了:https://www.digitalocean.com/community/tutorials/initial-server-setup-with-centos-7, 包括

  1. 使用 keygen 生成了我的新密钥 .pub 文件。
  2. 将以“ssh-rsa”开头的内容添加到 .ssh/authorized_keys
  3. chmod 密钥和 .ssh 文件夹,
  4. 使用以下方式配置 sshd vi /etc/ssh/sshd_config
  5. 用于systemctl reload sshd重新启动 sshd。

此时,我认为将来从我的客户端主机进行的 ssh 操作应该已经需要密钥才能登录。但是,此时我仍然可以使用 ssh 仅使用密码登录我的服务器。

我是否错过了什么特殊程序?

答案1

打开 sshd 配置文件并取消注释或添加行PasswordAuthentication no。重新启动 sshd 服务。

答案2

  1. 将以“ssh-rsa”开头的内容添加到 .ssh/authorized_keys

不...这应该在远程系统上进行。在您的个人系统上,您保留私钥,并将公钥添加到/home/<user>/.ssh/authorized_keys您想要使用该密钥访问的所有系统/用户 ID。这可以“手动”完成,也可以使用ssh-copy-id,通常:

ssh-copy-id -i ~/.ssh/your_key.pub remote-host

或者

ssh-copy-id -i ~/.ssh/your_key.pub user@remote-host

如果这是不同的用户 ID。

如果您手动执行此操作,请确保在所有文件和 .ssh 目录上保留正确的授权标志(应该严格只对该用户进行 R/W,其他任何人都无权访问)。

相关内容