SSH 密钥

什么是 SSH 密钥

SSH 密钥就像是你电脑的“身份证”和“钥匙”,
用来安全登录另一台电脑(服务器),而不需要每次输入密码。

SSH 密钥是一种安全登录远程服务器的方式,由一对加密的“钥匙”组成:一个公钥 + 一个私钥。

  • 公钥(可以公开)
  • 私钥(必须保密,只保存在你电脑上)

原理

想象你是远程服务器门口的保安

你说:“我每天都要进这栋楼(服务器),但我不想每次都输密码。”

于是你用了 SSH 密钥登录:

  1. 你把公钥(门锁)装在服务器上
  2. 你保留私钥(钥匙)在自己电脑上

以后你要进门(远程登录),你就:

  • 拿出私钥(钥匙)
  • 服务器用公钥(门锁)来验证你是不是“主人”
  • 对上了,开门成功;对不上,禁止进入

这就叫 SSH 密钥登录!


  1. 你用命令生成一对密钥:

    ssh-keygen
    

    会生成两个文件:

    • id_rsa:私钥(存自己电脑)
    • id_rsa.pub:公钥(复制到服务器)
  2. 当你用 SSH 登录服务器时:

    ssh user@服务器IP
    
    • 系统用私钥进行身份验证
    • 如果对得上,登录成功;不对就拒绝

它基于“非对称加密”,是一种非常安全的身份验证方式。


SSH 密钥的用途

用途 说明
无密码登录服务器 不用每次输入密码就能远程登录
自动化脚本 在自动化运维、部署脚本中免密登录远程主机
Git 推送代码 像 GitHub、GitLab 要你设置 SSH 密钥后才能安全推送代码
多台电脑之间远程访问 管理云服务器(阿里云、腾讯云、AWS)时必备
增强安全性 密钥比密码更安全,防止暴力破解

举例

你用阿里云/腾讯云租了一台服务器,系统是 Ubuntu。

如果用账号密码登录:

ssh [email protected]
# 然后输入密码

如果配置好 SSH 密钥后:

ssh [email protected]
# 直接就进去了,不用输密码

SSH 密钥 vs 密码登录

比较项 密码登录 SSH 密钥登录
安全性 较低(可能被猜) 很高(几乎不可能暴力破解)
方便性 需要每次输入密码 免密码,自动登录
自动化支持 不方便写脚本 适合自动化部署
是否易被盗用 密码可能被钓鱼 私钥泄露才有风险(可设置加密保护)

总结

SSH 密钥是一种更安全、更省心的远程登录方式,用一把“数字钥匙”代替输入密码,常用于远程服务器登录和 Git 代码推送等场景。

你可能感兴趣的:(基础知识,ssh,运维)