ssh密钥过期处理

131 阅读2分钟

ssh密钥过期处理

一、删除已过期的 SSH 密钥

  1. 进入 SSH 配置目录:

    bash

    cd ~/.ssh
    
  2. 查看当前存在的密钥文件(通常是 id_rsaid_ecdsa 等,文件名可能因生成时的算法不同而变化):

    bash

    ls
    
  3. 删除过期的密钥文件:

    bash

    rm C:\Users\user.ssh\id_rsa
    rm C:\Users\user.ssh\id_rsa.pub
    

二、重新生成新的 SSH 密钥

  1. 生成新密钥(邮箱替换为你绑定 Git 仓库的邮箱,如 GitHub/GitLab 注册邮箱):

    bash

    ssh-keygen -t ed25519 -C "your_email@example.com"
    
    • 若系统不支持 ed25519 算法,可改用:

    bash

    ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
    
  2. 执行后会提示设置密钥保存路径(直接按回车默认保存在 ~/.ssh/id_ed25519 或 id_rsa),以及是否设置密码(可直接回车跳过,也可设置密码增强安全性)。

三、将新的公钥添加到远程仓库(GitHub/GitLab/Gitee 等)

  1. 查看生成的公钥内容(根据实际文件名调整,如 id_ed25519.pub 或 id_rsa.pub):

打开刚才生成的密钥文件进行复制

image.png

  1. 登录你的远程仓库平台(以 GitHub 为例):

    • 点击右上角头像 → Settings → 左侧 SSH and GPG keys → New SSH key
    • 在 "Title" 中输入一个标识(如 "My New SSH Key"),在 "Key" 中粘贴刚才复制的公钥内容,点击 Add SSH key 保存。
    • gitlab:

image.png

image.png

image.png

四、验证 SSH 连接是否生效

  1. 执行以下命令测试连接(以 GitHub 为例,其他平台替换域名,如 GitLab 用 git@gitlab.com):

    bash

    ssh -T git@github.com
    
  2. 首次连接会提示确认,输入 yes 回车,若看到类似 "Hi [你的用户名]! You've successfully authenticated..." 说明验证成功。

五、重新执行 Git 操作

回到项目目录,再次尝试拉取代码:

bash

cd D:\project\PcMngWeb
git pull