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 ~/.ssh和chmod 600 authorizedkeys |
| 公钥未生效 | SSH服务未启用密钥认证 | 检查sshdconfig中PubkeyAuthentication yes |
详细步骤和常见问题解答
VPS创建SSH密钥完整指南
SSH密钥是比密码更安全的远程登录方式,能有效防止暴力破解攻击。以下是详细的创建和配置步骤:
一、生成SSH密钥对
- 操作说明
在本地终端执行命令生成RSA密钥对,建议使用4096位长度增强安全性。
- 使用工具提示
- Windows用户可使用PuTTYgen工具生成密钥
- Linux/macOS直接使用终端命令
- 命令示例
ssh-keygen -t rsa -b 4096 -C "youremail@example.com"
按提示选择保存路径(默认
~/.ssh/idrsa)和设置密码短语(可选)。二、上传公钥到VPS
- 操作说明
将生成的公钥文件(
idrsa.pub)内容添加到VPS服务器的authorizedkeys文件中。- 具体步骤
# 创建SSH目录(若不存在)
mkdir -p ~/.ssh
# 追加公钥内容
cat ~/idrsa.pub >> ~/.ssh/authorizedkeys
# 设置严格权限
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorizedkeys
三、配置SSH服务
- 编辑配置文件
vim /etc/ssh/sshdconfig
确保包含以下配置:
PubkeyAuthentication yes
PasswordAuthentication no
PermitRootLogin prohibit-password
- 重启服务
systemctl restart sshd
四、常见问题解决方案
| 问题现象 | 可能原因 | 解决方法 |
|---|---|---|
| 连接超时 | 防火墙阻止SSH端口 | 检查iptables/firewalld规则 |
| 权限被拒绝 | 密钥文件权限过宽 | 执行chmod 600 ~/.ssh/相关文件 |
| 主机密钥变更 | 服务器重装系统 | 删除本地known_hosts中对应记录 |
五、安全建议
- 定期更换密钥对(建议每6-12个月)
- 为私钥设置强密码短语
- 限制允许登录的用户(通过
AllowUsers配置) - 启用fail2ban防止暴力破解
/var/log/auth.log日志获取详细错误信息。
发表评论