前言
习惯了使用公司内的GitLab,已经有一段时间没有使用GitHub来维护自己的项目,近期需要新建个人项目在阿里云服务器上使用,竟然一时忘记了怎么用SSH连接GitHub。 因此本文记录一下SSH连接GitHub的方法,也方便后面自己参考。
整个过程比较简单,不过需要注意的是:
- 生成密钥时,可以不设置保护密码;
- 当然也可以设置密码,然后在每次使用密钥时都输入密码;
- 还可以设置密码之后将SSH密钥添加到ssh-agent,让SSH代理管理 SSH 密钥并记住你的密码,这样就不用每次使用密钥时都输入密码
具体使用哪种方式,可以自己结合实际需要进行选择。
详细的参考文档: https://docs.github.com/zh/authentication/connecting-to-github-with-ssh/about-ssh
生成新的SSH密钥
- 连接到自己的云服务器
- 生成密钥,命令如下(请替换自己的登录邮箱),这一步首先是输入密钥生成之后存放的路径和名称(可以按照需要输入,也可以直接按回车,即使用默认名称并存放到默认路径),然后是提示输入密钥保护密码(如果直接回车则不设置密码)
ssh-keygen -t ed25519 -C "xx@yy.com"
新增SSH密钥到GitHub账户
- 首先将 SSH 公钥复制到剪贴板(上一步生成密钥之后,会提示“Your public key has been saved in xxx”,把xxx里面的内容复制出来即可)
cat /root/.ssh/id_ed25519.pub
测试SSH连接
- 回到云服务器,输入如下命令验证SSH连接。如果设置了SSH密钥保护密码,则回车之后输入密码。看到
You've successfully authenticated 则说明连接成功。
ssh -T git@github.com
将SSH密钥添加到 ssh-agent
eval "$(ssh-agent -s)"
- 将 SSH 私钥添加到 ssh-agent(注意下面SSH密钥路径替换成自己的路径)
ssh-add /root/.ssh/id_ed25519
|