ed25519是当前ssh密钥首选算法,因其256位密钥短、签名快、抗量子能力强且安全性高;rsa兼容性最好但需4096位并启用pkcs#8格式;ecdsa慎用,仅限特定场景。

选对算法 + 正确生成,是 SSH 密钥安全的起点。现在主流有三种算法可选,不是越新越好,而是要兼顾安全性、兼容性和使用场景。
Ed25519:现代系统的首选
这是目前最推荐的默认选项,基于椭圆曲线密码学,密钥短(仅 256 位)、速度快、抗量子能力更强,且签名更安全。
- 生成命令:
ssh-keygen -t ed25519 -C "your_email@example.com" - 要求 OpenSSH ≥ 6.5(2014 年起已广泛支持),绝大多数 Linux 发行版、macOS(10.12+)、新版 Windows Terminal 都没问题
- 公钥开头为
ssh-ed25519,私钥默认存为~/.ssh/id_ed25519
RSA:兼容性最强,但需足够长
如果你要连接老旧设备(如某些嵌入式系统、老版本网络设备或定制化中间件),RSA 仍是唯一选择。但必须用 4096 位,2048 位已不被部分新系统默认接受,而 ssh-rsa 签名方式本身已被 OpenSSH 8.8+ 默认禁用。
宝塔面板11.3.0是一款针对Linux服务器设计的可视化管理工具,通过重构核心模块实现资源占用显著降低,尤其适合低配置服务器环境。它将复杂的命令行操作转化为直观的图形界面,帮助开发者快速完成网站部署、环境配置及日常运维工作,无需专业技术背景即可高效管理服务器。
- 生成命令:
ssh-keygen -t rsa -b 4096 -o -a 100 -C "your_email@example.com" -
-o启用新格式(PKCS#8),-a 100提高密钥加密强度(防暴力破解私钥文件) - 公钥以
ssh-rsa开头,私钥默认为~/.ssh/id_rsa
ECDSA:特定场景可用,但慎用
它比 RSA 更高效,比 Ed25519 兼容性稍好,但存在实现差异和潜在专利风险,部分审计标准(如 FIPS)也不完全认可。除非明确要求或对接特定平台,否则不优先考虑。
- 生成命令:
ssh-keygen -t ecdsa -b 521 -C "your_email@example.com" -
-b 521是 ECDSA 推荐最大位长(对应最强安全级别),不要用 256 或 384,除非目标系统明确限制 - 公钥以
ecdsa-sha2-nistp521开头
生成时的关键操作细节
无论选哪种算法,以下步骤缺一不可:
- 保存路径建议用默认值(直接回车),便于工具自动识别;如需多密钥,可用
-f ~/.ssh/id_work指定文件名 - 务必设置 passphrase —— 这是私钥的最后一道防线,哪怕只是简单记在密码管理器里
- 生成后立即执行:
chmod 600 ~/.ssh/id_*,防止其他用户读取私钥 - 公钥内容用
cat ~/.ssh/id_ed25519.pub查看,复制时确保首尾无空格、无换行
算法选好了,命令敲对了,权限设严了,密钥就真正可用。后续只需把公钥放到服务器 ~/.ssh/authorized_keys 里,就能开始免密登录。










