自学教程 学编程从这里开始

Ubuntu 生成 SSH Key

Ubuntu 生成 SSH Key(适配 Gitee)

1. 生成密钥(推荐 ed25519)

打开终端执行,把邮箱换成你 Gitee 绑定邮箱:

ssh-keygen -t ed25519 -C "your@gitee-email.com"

如果服务器比较老、不支持 ed25519,改用 RSA:

ssh-keygen -t rsa -b 4096 -C "your@gitee-email.com"

执行后交互:

  1. Enter file in which to save the key (/home/xxx/.ssh/id_ed25519):

    → 直接回车,使用默认路径
  2. Enter passphrase (empty for no passphrase):

    → 回车(不设置密钥密码,方便免密;安全需求高可以输入密码)
  3. Enter same passphrase again:

    → 再回车

2. 启动 ssh-agent 并添加私钥

eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_ed25519

如果是rsa密钥:ssh-add ~/.ssh/id_rsa

3. 复制公钥

cat ~/.ssh/id_ed25519.pub

输出类似:

ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIxxxxxxx your@gitee-email.com

整行全部复制,粘贴到 Gitee SSH公钥设置里。

4. 测试连通 Gitee

ssh -T git@gitee.com

成功提示:

Hi 你的Gitee用户名! You've successfully authenticated, but Gitee does not provide shell access.

✅ 看到这个就代表SSH密钥没问题,再 git clone git@gitee.com:xxx/xxx.git


常见坑(Ubuntu)

坑1:.ssh 权限不对(ssh非常敏感权限)

chmod 700 ~/.ssh
chmod 600 ~/.ssh/id_ed25519
chmod 644 ~/.ssh/id_ed25519.pub

坑2:老系统rsa密钥认证失败(OpenSSH 8.8+)

新建/编辑 ~/.ssh/config

nano ~/.ssh/config

写入:

Host gitee.com
  HostkeyAlgorithms +ssh-rsa
  PubkeyAcceptedAlgorithms +ssh-rsa

保存退出(nano:Ctrl+O 回车,Ctrl+X)

坑3:多套ssh密钥(多个git平台)

坑4:当前目录没有写写权限。

标签:

0 条笔记