先描述一下遇见问题的整个过程吧!
我首先设置一下身份的名字和邮箱 git config --global user.name "yourname" ; git config --global user.email "your@email.com"
注意: 这里必须设置了用户和邮箱 才能重新生成ssh公钥
然后配置公钥 ssh-keygen -t rsa -C “×××××××@×××.com”, 去 /root/.ssh/id_rsa.pub 中复制了整个公钥, 并且在我的gitee账号中进行了配置
此时都还一切正常, 但我回到了宝塔界面的终端里想通过 ssh -T "git@gitee.com" 进行验证时, 却发现终端始终连接不上, 密码账号正确也还是无法连接, 如图:
这时我又赶紧去网上找解决办法, 最终一通操作下来, 终于可以进入终端, 但此时我 输入代码ssh -T "git@gitee.com" 或者克隆 , 都会报错 Permission denied (publickey).
真的让我百思不得其解, 前前后后搞了几大个小时, 终于发现了问题所在
问题原因
当我配置好公钥后, 打卡宝塔终端界面, 却出现了无法自动认证的 bug
, 导致了我在解决此问题的过程中, 操作了宝塔中的SSH安全管理界面, 开启了SSH密钥登录功能, 使得宝塔对公钥进行了重置, 此时的公钥和在gitee中配置好的公钥已经不一致了, 虽然终端无法自动认证的问题被解决, 可以使用宝塔的终端了, 但是也导致了公钥前后不一致, 最终出现了公钥失效的问题
解决办法
我自己总结出来的解决办法, 说不出什么很深刻的道理, 但是避免了这一系列问题
1. 最重要的就是要先开启SSH密钥登录功能
2. 此时直接在/root/.ssh/id_rsa.pub文件中复制密钥, 去gitee中配置即可
如果找不此文件, 则 先执行 ssh-keygen -t rsa -C “×××××××@×××.com” 配置密钥, 然后再继续去找到文件中的密钥, 复制再去gitee配置即可
用这篇博客 , 记录一下我学习过程中遇到的问题 ^_^