【SSH】一行命令登录服务器:SSH Key + 配置文件全攻略

​ 在日常开发和科研中,我们经常需要登录远程服务器。每次敲 ssh user@server 然后输入密码,重复、枯燥,而且一不小心密码输错就得重来——这种体验,简直是效率杀手。

​ 其实,只要你掌握 SSH Key + 配置文件,完全可以做到:一行命令登录服务器,安全又高效,从此告别密码输入。

​ 本文就带你从原理到实操,一步步搞定。

在这里插入图片描述

一、SSH Key:密码的“安全升级版”

​ 首先要理解 SSH Key 的原理:

  • 公钥 (id_ed25519.pub):可以公开,放在服务器上
  • 私钥 (id_ed25519):必须保存在本地,绝不能泄露

​ 直观来说,私钥像你的门钥匙公钥像门锁。服务器用公钥验证你的身份,如果匹配,就自动开门,你不再需要密码。

​ 这不仅安全,而且让工具如 Cursor 自动登录服务器时,也能直接识别,无需重复输入账号密码。

二、生成 SSH Key

​ 在本地生成一把新的 SSH Key 非常简单:

ssh-keygen -t ed25519 -C "your_email@example.com"
  • -t ed25519:推荐现代加密算法

  • 按回车使用默认路径即可

  • 可以设置密码保护私钥(可选)

    生成完成后,你会在 ~/.ssh 目录下看到两个文件:id_ed25519(私钥)和 id_ed25519.pub(公钥)。

三、将公钥上传到服务器

​ 最简单的方式是:

ssh-copy-id user@xxx.vpn

​ 如果没有 ssh-copy-id,也可以手动:

cat ~/.ssh/id_ed25519.pub | ssh user@xxx.vpn "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"
  • 提醒:服务器上 .ssh 文件夹权限必须安全,否则 SSH 会拒绝使用
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

四、配置 SSH快捷登录

​ SSH Key 已经搞定,但每次还敲 ssh user@server,输入长地址,也不够方便。

这时候,~/.ssh/config 就派上用场了:

Host xxx.vpn
    HostName xxx.vpn
    User your_username
    IdentityFile ~/.ssh/id_ed25519
  • Host:你想输入的快捷命令
  • HostName:真实服务器地址或 IP
  • User:登录用户名
  • IdentityFile:私钥路径

4.1 常规测试

​ 配置好后,你只需要:

ssh xxx.vpn

​ 就可以 自动登录,无需输入密码和用户名。

4.2 在 cursor 里添加新的远程连接

  • 选择 SSH 方式
  • Host 名称填写 xxx.vpn(和 config 中的 Host 对应)
  • cursor 会自动读取 User、KeyPath 等信息
  • 测试连接即可,无需再输入密码

5. 进阶技巧

5.1 保持连接活跃

​ 在 ~/.ssh/config 中添加:

ServerAliveInterval 60
ServerAliveCountMax 3

​ 防止长时间未操作时断开连接。

5.2 多服务器管理 / 跳板机

​ 如果你有跳板机或多台服务器:

Host jump
    HostName jump.vpn
    User your_username

Host gpu-server
    HostName 10.0.0.12
    User ray
    ProxyJump jump

​ 之后直接:

ssh gpu-server

​ 就可以通过跳板机一键连接目标服务器。

5.3 macOS 密钥管理

​ macOS 可以把私钥密码存入钥匙串,避免每次输入:

ssh-add --apple-use-keychain ~/.ssh/id_ed25519

6. 不推荐的方式

  • 明文保存密码
  • expect 自动输密码
  • shell alias 里写密码

安全性和可维护性都很差,最好避免。

7. 总结

  • SSH Key + Config 是 安全、专业、方便 的自动登录方式
  • 一行命令登录服务器,不再重复输入账号密码
  • 适合开发者、运维、科研人员
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

未收敛

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值