Push failed Remote: Support for password authentication was removed on August 13, 2021.

啥情况,竟然不能推送代码到github了!还能不能愉快的玩耍了?

报错如下:
在这里插入图片描述

报错信息
大概意思就是,8月13后,不能使用用户名+密码的形式进行Push,强制大家改成SSH的方式。
先说解决方案吧:

一、查看是否已有密钥

Mac:

/Users/Your_Name/.ssh

把 Your_Name 换成你的用户名
Windows:

c\用户\自己的用户名\.ssh

如果存在,会有以下文件:
在这里插入图片描述
那么恭喜,直接跳转到步骤三即可!没有则继续【第二步】。

二、生成新SSH

2.1 执行命令生成

ssh-keygen -t rsa -C "youremail@example.com"

然后会提示你生成路径等等,记住路径,一直回车即可:
生成图片

2.2 文件

在这里插入图片描述

拿到id_rsa.pub进行【第三步】即可!

三、绑定SSH

登录Github,依次点击:【Settings】->【SSH and GPG keys】->【New SSH key】

Settings

在这里插入图片描述

SSH and GPG keys

在这里插入图片描述

Add new SSH keys

在这里插入图片描述

修改项目 remote

添加完SSH keys后,我们需要把项目从原有 http 改成 ssh方式:

git remote -v
git remote set-url origin ssh-url
git push

把ssh-url替换成实际地址,SSH地址从这里拿:在这里插入图片描述

然后就成功了!如下图:在这里插入图片描述
至此,可以继续愉快的进行玩耍了!

四、SSH

4.1 优点

  • 专用于 GitHub,可以根据每次使用或设备单独生成
  • 可以在任何时候撤销令牌,且对其他令牌不造成影响
  • 可以设置权限,只允许用例所需的访问
  • 不会被暴力破解,账户密码方式会被暴力字典破解

4.2 原理

SSH 基于非对称加密算法

(1)乙方生成两把密钥(公钥和私钥)。公钥是公开的,任何人都可以获得,私钥则是保密的。
(2)甲方获取乙方的公钥,然后用它对信息加密。
(3)乙方得到加密后的信息,用私钥解密。

附录

Github 官方说明
SSH生成
阮老师的加密文章

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值