如何为VPS配置密钥登录?有哪些步骤和注意事项?
| 步骤 |
操作说明 |
使用工具 |
| 1 |
生成SSH密钥对 |
ssh-keygen |
| 2 |
将公钥上传至VPS |
ssh-copy-id |
| 3 |
修改SSH配置 |
nano /etc/ssh/sshdconfig |
| 4 |
重启SSH服务 |
systemctl restart sshd |
VPS密钥登录配置指南
为什么要使用密钥登录?
密钥登录比密码登录更安全,可以有效防止暴力破解。密钥对由私钥和公钥组成,私钥保存在本地,公钥上传到VPS服务器。即使公钥被泄露,没有私钥也无法登录。
配置步骤详解
- 生成SSH密钥对
在本地终端执行以下命令:
ssh-keygen -t rsa -b 4096
按提示操作,默认会生成idrsa(私钥)和id
rsa.pub(公钥)文件。
- 上传公钥到VPS
使用以下命令将公钥上传到VPS:
ssh-copy-id username@your
vps
ip
输入VPS密码完成上传。
- 修改SSH配置
登录VPS,编辑SSH配置文件:
sudo nano /etc/ssh/sshd
config
确保以下配置项存在并正确:
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorizedkeys
PasswordAuthentication no # 可选,禁用密码登录提高安全性
- 重启SSH服务
修改配置后重启服务使更改生效:
sudo systemctl restart sshd
常见问题及解决方案
| 问题 |
原因 |
解决方案 |
| 连接被拒绝 |
防火墙阻止SSH端口 |
检查防火墙规则,开放22端口 |
| 权限被拒绝 |
密钥文件权限不正确 |
执行chmod 600 ~/.ssh/idrsa |
| 无法使用密钥登录 |
SSH配置错误 |
检查sshd_config中的PubkeyAuthentication设置 |
| 连接超时 |
网络问题或VPS未运行 |
检查VPS状态和网络连接 |
注意事项
- 私钥文件必须妥善保管,丢失将无法登录
- 建议禁用root直接登录,创建普通用户并sudo权限
- 定期更换密钥对可提高安全性
- 配置完成后建议测试密钥登录功能再禁用密码登录
发表评论