VPS如何创建SSH密钥?_ - Windows用户可使用PuTTYgen工具生成密钥

如何在VPS上创建SSH密钥?

步骤 操作说明 使用工具/命令
1. 生成密钥对 在本地终端执行ssh-keygen -t rsa -b 4096 ssh-keygen命令
2. 上传公钥 将公钥内容追加到服务器的authorizedkeys文件 cat命令、文本编辑器
3. 配置SSH服务 修改/etc/ssh/sshdconfig启用密钥认证 vim编辑器
4. 重启服务 执行systemctl restart sshd使配置生效 systemctl命令
常见问题 原因 解决方案
———- —— ———-
密钥验证失败 主机密钥不匹配或过期 使用ssh-keygen -R [IP]清除旧记录
连接被拒绝 文件权限设置错误 执行chmod 700 ~/.sshchmod 600 authorizedkeys
公钥未生效 SSH服务未启用密钥认证 检查sshdconfigPubkeyAuthentication yes

详细步骤和常见问题解答

VPS创建SSH密钥完整指南


SSH密钥是比密码更安全的远程登录方式,能有效防止暴力破解攻击。以下是详细的创建和配置步骤:

一、生成SSH密钥对



  1. 操作说明


在本地终端执行命令生成RSA密钥对,建议使用4096位长度增强安全性。

  1. 使用工具提示



  • Windows用户可使用PuTTYgen工具生成密钥

  • Linux/macOS直接使用终端命令



  1. 命令示例


   ssh-keygen -t rsa -b 4096 -C "youremail@example.com"

按提示选择保存路径(默认~/.ssh/id
rsa)和设置密码短语(可选)。

二、上传公钥到VPS



  1. 操作说明


将生成的公钥文件(idrsa.pub)内容添加到VPS服务器的authorizedkeys文件中。

  1. 具体步骤


   # 创建SSH目录(若不存在)
mkdir -p ~/.ssh
# 追加公钥内容
cat ~/idrsa.pub >> ~/.ssh/authorizedkeys
# 设置严格权限
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorizedkeys

三、配置SSH服务



  1. 编辑配置文件


   vim /etc/ssh/sshdconfig

确保包含以下配置:
   PubkeyAuthentication yes
PasswordAuthentication no
PermitRootLogin prohibit-password


  1. 重启服务


   systemctl restart sshd

四、常见问题解决方案

问题现象 可能原因 解决方法
连接超时 防火墙阻止SSH端口 检查iptables/firewalld规则
权限被拒绝 密钥文件权限过宽 执行chmod 600 ~/.ssh/相关文件
主机密钥变更 服务器重装系统 删除本地known_hosts中对应记录

五、安全建议

  1. 定期更换密钥对(建议每6-12个月)
  2. 为私钥设置强密码短语
  3. 限制允许登录的用户(通过AllowUsers配置)
  4. 启用fail2ban防止暴力破解
通过以上步骤,您可以在VPS上安全地配置SSH密钥登录,显著提升服务器安全性。如遇连接问题,可检查/var/log/auth.log日志获取详细错误信息。

发表评论

评论列表