当前位置: 首页 > news >正文

Hetzner创建云服务器SSH Keys配置介绍(公钥、私钥、密钥配置、SSH配置)

文章目录

  • Hetzner创建云服务器SSH Keys配置介绍
  • 为什么会有 SSH Key?
  • SSH Key 到底是什么?
  • 为什么叫公钥和私钥?
  • 登录过程发生了什么?
  • 为什么服务器只有公钥还能验证?
  • SSH Key 为什么不能反推出私钥?
  • Hetzner 为什么让你添加 SSH Key?
  • 整个流程图
  • 实际操作(Windows / macOS / Linux 都适用)
    • 第一步:生成 SSH Key
    • 第二步:查看公钥
    • 第三步:添加到 Hetzner
    • 第四步:创建服务器
    • 注意这里如果不是用默认生成的SSH密钥,需要在`~/user/.ssh/config`中添加配置
    • 第五步:登录
    • 建议

Hetzner创建云服务器SSH Keys配置介绍

Hetzner 创建云服务器时的SSH Keys配置,这是现代 Linux 服务器最推荐的登录方式。

你可以把 SSH Key 理解成一种比密码更安全、更方便的身份证

先看一下截图里的提示:

No SSH key selected.

我们推荐使用 SSH Key,否则我们会把 root 密码发送到你的邮箱。

也就是说:

  • 使用 SSH Key:创建服务器时就把你的公钥放进去,以后直接登录,不需要密码。
  • 不使用 SSH Key:Hetzner 会生成一个 root 密码,通过邮件发给你。

为什么会有 SSH Key?

先理解密码登录为什么不好。

假设你的服务器 IP 是:

49.12.xx.xx

传统登录方式:

sshroot@49.12.xx.xx

然后:

Password:

输入密码。

问题来了:

  • 密码容易泄露
  • 容易被暴力破解
  • 需要记住
  • 密码可能在邮件中传播
  • 自动化脚本不方便

所以后来大家想到:

为什么不用公钥密码学?

于是就有了 SSH Key。


SSH Key 到底是什么?

它其实就是一对钥匙:

┌───────────────┐ │ ssh-keygen │ └──────┬────────┘ │ ▼ 私钥(Private Key) id_ed25519 │ │ │ ▼ 公钥(Public Key) id_ed25519.pub

生成的时候,一次产生两把钥匙。

其中:

私钥

id_ed25519

只有你自己保存。

永远不要给别人。


公钥

id_ed25519.pub

可以公开。

里面长这样:

ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAI...

这就是你要上传到 Hetzner 的东西。


为什么叫公钥和私钥?

因为它们是一对。

可以理解成:

公钥 = 锁 私钥 = 钥匙

服务器只安装:

你的电脑保存:

钥匙

只有你的钥匙能打开那把锁。

所以:

服务器 ← 公钥 电脑 ← 私钥

登录过程发生了什么?

假设:

你的电脑:

Private Key

服务器:

Public Key

登录:

sshroot@server

整个过程其实类似:

你的电脑 Private Key │ │ ▼ 我可以证明 我拥有私钥 │ ────────────►│ 服务器 Public Key 验证: 这个签名 是不是对应 我的公钥? 是 允许登录

重点:

整个过程没有传输私钥。

密码也没有传输。


为什么服务器只有公钥还能验证?

这是公钥密码学最神奇的地方。

举个例子。

假设:

服务器说:

给你一道题: 123456789

你的电脑拿私钥:

签名: ABCDXYZ...

发回服务器。

服务器用:

Public Key

验证:

是不是对应? ✔ 是

于是:

你一定拥有私钥。

但服务器永远不知道私钥是什么。

这就是数字签名的原理。


SSH Key 为什么不能反推出私钥?

因为使用的是成熟的公钥密码算法,例如:

  • Ed25519(目前推荐)
  • RSA(老但仍常见)
  • ECDSA

这些算法设计上就是:

Private Key │ ▼ 数学运算 ▼ Public Key

这个过程容易。

反过来:

Public Key ↓ Private Key

几乎不可能。

否则整个互联网 HTTPS 都会失效。


Hetzner 为什么让你添加 SSH Key?

创建服务器的时候,它会做一件事:

你的公钥 ↓ 写进服务器: ~/.ssh/authorized_keys

例如:

/root/.ssh/authorized_keys

里面就是:

ssh-ed25519 AAAAC3Nza....

以后:

ssh root@server

服务器就会检查:

你的私钥 ↓ 是不是对应 authorized_keys 里的公钥?

如果匹配:

登录成功

整个流程图

第一次 你的电脑 ────────────── 生成: id_ed25519 id_ed25519.pub │ │上传 ▼ Hetzner 创建服务器 │ 写入: authorized_keys ──────────────────────── 以后登录: ssh root@IP │ 使用: Private Key │ 数字签名 ▼ 服务器 Public Key │ 验证成功 ▼ 登录

实际操作(Windows / macOS / Linux 都适用)

具体操作记录参考文章:Hetzner服务器购买和Cloudflare域名配置记录(hcloud CLI)

第一步:生成 SSH Key

打开终端执行:

ssh-keygen-ted25519-C"your_email@example.com"

邮箱部分是注释,不影响密钥的实际功能

参考文章:ssh-keygen命令介绍

一路按回车即可。

生成后通常会得到:

~/.ssh/id_ed25519 ~/.ssh/id_ed25519.pub

Windows 使用 PowerShell 也是一样。


第二步:查看公钥

执行:

cat~/.ssh/id_ed25519.pub

会输出:

ssh-ed25519 AAAAC3Nz...... your_email@example.com

全部复制。


第三步:添加到 Hetzner

点击:

+ Add SSH key

填写:

Name: My Laptop
Public Key: ssh-ed25519 AAAAC3Nza...

保存。


第四步:创建服务器

创建服务器时勾选:

✓ My Laptop

服务器创建完成后,就已经信任你的电脑了。


注意这里如果不是用默认生成的SSH密钥,需要在~/user/.ssh/config中添加配置

Host hetzner-server HostName ********** User root IdentityFile ~/.ssh/hetzner_jobcopilot IdentitiesOnly yes

第五步:登录

sshroot@服务器IP

第一次会提示:

Are you sure you want to continue connecting?

输入:

yes

之后就直接进入服务器,不需要输入 root 密码。


sshhetzner-server

第一次登陆,键入yes

建议

如果你接下来打算用 Hetzner 部署项目,我建议从一开始就使用 SSH Key 登录,而不是密码登录。这也是 Linux 运维和云平台(包括 GitHub、GitLab、AWS、Azure、Google Cloud 等)的主流做法。

如果你感兴趣,我还可以进一步讲解SSH 的完整工作机制,包括:

  • 为什么第一次连接会出现Are you sure you want to continue connecting?(Host Key 是什么)
  • known_hosts文件的作用
  • authorized_keys文件的作用
  • SSH 登录过程中完整的握手流程(客户端认证、服务器认证、会话密钥协商),帮助你真正理解 SSH 的底层原理。
http://www.jsqmd.com/news/1123883/

相关文章:

  • 终极B站视频下载指南:用BilibiliDown实现高效离线观看
  • CI/CD是什么?使用GitHub Actions快速体验
  • 日前公司 server-side 有组件,疑似因撰写时 exception-handling 做得不周全
  • 震惊!原来毕业论文还能这样写?2026降AI率工具推荐合集
  • 好用的区域教育一体化管理平台源头厂家
  • 文心一言内测实录:中文长文本理解与企业文档处理深度评测
  • GPT-4与GPT-4 Turbo核心差异:上下文、知识、稳定性与成本的工程真相
  • 从CVE-2020-27986看SonarQube安全加固:构建纵深防御的代码审计平台
  • 一次 GitLab 大仓库 Clone 中断排查
  • git的基本了解
  • 学术科研选模型的本质:任务-能力匹配三原则
  • HackDroid:移动端Android安全测试与逆向分析工具箱实战指南
  • 无线鼠标持续充电技术的演进——6.78MHz磁共振国产方案的崛起
  • Db2数据库手工SQL注入实战:从原理到靶场复现
  • 2025终极指南:如何轻松突破Google Drive PDF下载限制的3个关键步骤
  • TVA在具身智能商业化部署中的技术突破(14)
  • E-Hentai下载器完整指南:3分钟掌握免费画廊打包技巧
  • 是谁给你的身份?中小政企轻量化本地 IAM 通用部署与选型全指南
  • 找人做AI系统之前,这5个坑你一定要知道
  • GB 14881-2025对食品工作服提出了哪些新要求?
  • 计算机毕业设计之jsp克拉玛依职业技术学院信息工程系网站
  • 2026最新智习室合作盈利分析 看完就清楚能不能赚到钱
  • QLoRA技术从入门到精通
  • 毫米波芯片技术助力太空通信革新
  • 哈夫曼编码:压缩算法中的“最优解”
  • 毕设一条龙都包含什么?从选题到答辩,每项干什么、值不值(明码思路)
  • 金融投资公司出海后,通常选哪家实体管理供应商?
  • 【下一代智慧养老:架构与实战连载】前言
  • 为什么有些人成功后,反而败得越快?
  • AUTOSAR通信栈CAN LIN FlexRay实现:构建汽车网络通信系统