VPS密钥登录怎么操作?_详细步骤教你安全连接

如何通过SSH密钥对安全登录VPS服务器?

操作步骤 使用工具 关键要点
生成密钥对 ssh-keygen 选择加密算法,设置密钥保护密码
上传公钥 ssh-copy-id/scp 将公钥复制到服务器authorizedkeys文件
配置SSH 文本编辑器 修改SSH配置文件增强安全性
测试登录 SSH客户端 验证密钥登录是否正常工作
禁用密码 文本编辑器 完成密钥配置后关闭密码登录

VPS密钥登录怎么操作?详细步骤教你安全连接

主要操作步骤概览

步骤 操作内容 所需工具
1 生成SSH密钥对 ssh-keygen
2 上传公钥到VPS ssh-copy-id/scp
3 配置SSH服务端 文本编辑器
4 测试密钥登录 SSH客户端
5 禁用密码登录 文本编辑器

详细操作流程

步骤1:生成SSH密钥对

操作说明: 在本地计算机上生成一对SSH密钥,包括私钥和公钥。私钥保留在本地,公钥上传到VPS服务器。 使用工具提示
  • Linux/macOS:使用终端
  • Windows:使用PowerShell或WSL
代码块模拟工具界面
# 生成RSA密钥对,长度为4096位
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/username/.ssh/id
rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again:

步骤2:上传公钥到VPS

操作说明: 将生成的公钥文件复制到VPS服务器的 authorizedkeys 文件中。 使用工具提示
  • ssh-copy-id(推荐,自动完成)
  • scp(手动复制)
代码块模拟工具界面
# 方法1:使用ssh-copy-id自动上传
ssh-copy-id -i ~/.ssh/idrsa.pub username@yourserverip

方法2:手动复制公钥内容

cat ~/.ssh/idrsa.pub

复制输出的公钥内容,然后在VPS上执行:

mkdir -p ~/.ssh echo "粘贴的公钥内容" >> ~/.ssh/authorized
keys chmod 700 ~/.ssh chmod 600 ~/.ssh/authorizedkeys

步骤3:配置SSH服务端

操作说明: 修改VPS上的SSH配置文件,启用密钥认证并优化安全设置。 使用工具提示
  • 使用vim、nano等文本编辑器
  • 需要root权限
代码块模拟工具界面
# 编辑SSH配置文件
sudo nano /etc/ssh/sshdconfig

确保以下配置项正确设置

PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorizedkeys PasswordAuthentication no PermitEmptyPasswords no ChallengeResponseAuthentication no

步骤4:测试密钥登录

操作说明: 重启SSH服务后,测试使用密钥登录VPS是否成功。 使用工具提示
  • 测试前确保公钥已正确上传
  • 保持一个现有连接以防配置错误
代码块模拟工具界面
# 重启SSH服务
sudo systemctl restart sshd

从新终端测试登录

ssh -i ~/.ssh/id
rsa username@yourserverip

如果设置了密钥密码,会提示输入

Enter passphrase for key '/home/username/.ssh/idrsa':

步骤5:禁用密码登录

操作说明: 确认密钥登录正常工作后,彻底禁用密码登录以提高安全性。 使用工具提示
  • 再次编辑SSH配置文件
  • 谨慎操作,确保密钥登录可用
代码块模拟工具界面
# 确认密钥登录正常后,禁用密码登录
sudo nano /etc/ssh/sshdconfig

修改以下配置

PasswordAuthentication no UsePAM no

重启SSH服务生效

sudo systemctl restart sshd

常见问题与解决方案

问题 原因 解决方案
权限被拒绝 (Permission denied) .ssh目录或文件权限设置错误 执行:chmod 700 ~/.ssh 和 chmod 600 ~/.ssh/authorizedkeys
密钥格式不正确 公钥内容损坏或格式错误 重新生成密钥对或检查公钥文件完整性
连接超时 防火墙阻止SSH连接或IP地址错误 检查防火墙设置和服务器IP地址,确认SSH端口开放
服务器拒绝密钥 服务器未启用密钥认证或配置错误 检查sshdconfig中PubkeyAuthentication是否为yes
忘记密钥密码 设置密钥时添加了密码保护 使用ssh-keygen -p命令更改密码,或重新生成无密码密钥

通过以上步骤,您可以成功配置VPS的密钥登录方式,显著提升服务器的安全性。密钥登录不仅比密码更安全,还能简化日常的登录操作。

发表评论

评论列表