🔑 设置基于SSH密钥的认证

🔑 设置基于SSH密钥的认证

💡 原文英文,约600词,阅读约需3分钟。
📝

内容提要

本文介绍了如何通过SSH实现无密码登录远程服务器。首先启动SSH服务器,然后在客户端生成SSH密钥并将公钥复制到主机。最后验证密钥并尝试登录,如需密码则修改SSH配置文件并重启服务器。

🎯

关键要点

  • 启动主机上的SSH服务器,使用命令:sudo systemctl start ssh。
  • 检查SSH服务器状态,使用命令:sudo systemctl status ssh。
  • 在客户端生成SSH密钥,使用命令:sudo ssh-keygen -b 4096。
  • 如果已有密钥,建议使用不同的文件名以避免覆盖。
  • 将公钥复制到主机,使用命令:ssh-copy-id -i ~/.ssh/customFileName.pub username@ip。
  • 验证主机上的密钥是否成功复制,使用命令:cat ~/.ssh/authorized_keys。
  • 从客户端尝试登录主机,使用命令:ssh username@ip。
  • 如果仍然要求输入密码,需修改SSH配置文件,设置PasswordAuthentication为no,Public Key Authentication为yes。
  • 重启SSH服务器,使用命令:sudo systemctl restart ssh。
  • 完成后,应该能够通过SSH密钥认证无密码登录。

延伸问答

如何启动SSH服务器?

使用命令:sudo systemctl start ssh。

如何在客户端生成SSH密钥?

在客户端运行命令:sudo ssh-keygen -b 4096。

如何将公钥复制到主机?

使用命令:ssh-copy-id -i ~/.ssh/customFileName.pub username@ip。

如何验证公钥是否成功复制?

在主机上运行命令:cat ~/.ssh/authorized_keys,检查公钥是否存在。

如果SSH仍然要求输入密码,我该怎么办?

需要修改SSH配置文件,将PasswordAuthentication设置为no,Public Key Authentication设置为yes,然后重启SSH服务器。

完成SSH密钥认证后,我能做什么?

完成后,应该能够通过SSH密钥认证无密码登录。

➡️

继续阅读