VPS如何配置密钥登录替代密码登录?
| 项目 |
数据 |
| 配置步骤 |
4个主要阶段 |
| 所需工具 |
SSH客户端、文本编辑器 |
| 适用系统 |
Linux发行版 |
| 安全等级 |
高 |
VPS如何换成密钥登录?安全连接与操作指南
将VPS从密码登录更换为密钥登录是提升服务器安全性的重要措施。密钥登录相比传统密码登录具有更高的安全性,能有效防止暴力破解攻击。
主要操作步骤概览
| 步骤 |
操作内容 |
预计时间 |
| 1 |
生成SSH密钥对 |
2分钟 |
| 2 |
上传公钥到VPS |
3分钟 |
| 3 |
配置SSH服务 |
5分钟 |
| 4 |
测试并禁用密码登录 |
3分钟 |
详细操作流程
步骤1:生成SSH密钥对
操作说明:在本地计算机上生成RSA或Ed25519类型的SSH密钥对,包含公钥和私钥两部分。
使用工具提示:使用终端或命令提示符执行ssh-keygen命令
ssh-keygen -t rsa -b 4096 -C "youremail@example.com"
工具界面模拟:
Generating public/private rsa key pair.
Enter file in which to save the key (/home/user/.ssh/idrsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/user/.ssh/idrsa
Your public key has been saved in /home/user/.ssh/idrsa.pub
The key fingerprint is:
SHA256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx youremail@example.com
步骤2:上传公钥到VPS
操作说明:将生成的公钥文件内容添加到VPS的authorized
keys文件中。
使用工具提示:使用ssh-copy-id命令或手动复制公钥内容
ssh-copy-id -i ~/.ssh/id
rsa.pub username@your
vpsip
工具界面模拟:
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/home/user/.ssh/idrsa.pub"
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed
username@yourvpsip's password:
Number of key(s) added: 1
Now try logging into the machine with: "ssh 'username@yourvpsip'"
步骤3:配置SSH服务
操作说明:修改VPS上的SSH配置文件,启用密钥认证并优化安全设置。
使用工具提示:使用文本编辑器编辑/etc/ssh/sshdconfig文件
sudo nano /etc/ssh/sshdconfig
工具界面模拟:
# 确保以下配置项正确设置
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorizedkeys
PasswordAuthentication no
PermitEmptyPasswords no
ChallengeResponseAuthentication no
步骤4:测试并应用配置
操作说明:重启SSH服务并测试密钥登录是否正常工作,同时保持现有连接不中断。
使用工具提示:使用systemctl重启SSH服务并在新终端中测试连接
sudo systemctl reload sshd
在新终端中测试连接
ssh -i ~/.ssh/idrsa username@yourvpsip
工具界面模拟:
# 重启服务输出
$ sudo systemctl reload sshd
测试连接输出
Last login: Mon Nov 01 10:30:45 2025 from xxx.xxx.xxx.xxx
[username@vps ~]$
常见问题与解决方案
| 问题 |
原因 |
解决方案 |
| 连接时提示”Permission denied” |
私钥权限设置过于开放 |
执行chmod 600 ~/.ssh/idrsa设置正确权限 |
| SSH服务重启失败 |
配置文件语法错误 |
使用sshd -t测试配置文件语法,修复错误后重启 |
| 无法使用密钥登录 |
authorizedkeys文件权限错误 |
设置chmod 700 ~/.ssh和chmod 600 ~/.ssh/authorizedkeys |
| 登录时仍要求密码 |
PasswordAuthentication未正确禁用 |
检查sshd_config中PasswordAuthentication设置为no |
| 公钥格式错误 |
复制过程中格式损坏 |
重新生成密钥对或检查公钥格式是否正确 |
在实际操作过程中,建议在进行关键配置变更前备份重要配置文件,并在测试完全成功后再禁用密码登录,以避免被锁定在服务器之外。密钥登录配置完成后,服务器的安全性将得到显著提升,同时登录过程也会更加便捷。
发表评论