CentOS 8解决ssh连接github时sign_and_send_pubkey失败问题

发布于:2025-06-22 ⋅ 阅读:(19) ⋅ 点赞:(0)

我在一台centos8机器上安装git环境以连接到github,首先第一步需配置好ssh环境,因为我已经有一台Ubuntu机器已经配置好ssh环境,所以我ftp Ubuntu机器取得id_rsa  id_rsa.pub  known_hosts三个文件,然后执行命令:
$ git clone git@github.com:your-username/learning_log.git
Cloning into 'learning_log'...
Warning: Permanently added the ECDSA host key for IP address '20.205.243.166' to the list of known hosts.
sign_and_send_pubkey: signing failed: agent refused operation
git@github.com: Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
明显失败了

然后执行以下命令直接用ssh测试:
$ ssh -T git@github.com
sign_and_send_pubkey: signing failed: agent refused operation
git@github.com: Permission denied (publickey).
还是失败

然后执行:
$ eval "$(ssh-agent -k)"
SSH_AGENT_PID not set, cannot kill agent
$ eval "$(ssh-agent -s)"
Agent pid 35072

然后执行:
$ ssh -T git@github.com
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0664 for '/home/zhang/.ssh/id_rsa' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Load key "/home/zhang/.ssh/id_rsa": bad permissions
git@github.com: Permission denied (publickey).
毛病找到了,是密钥文件的权限问题。然后执行:
$ chmod 600 id*
$ chmod 644 k*
然后执行:
$ ssh -T git@github.com
Hi your-username! You've successfully authenticated, but GitHub does not provide shell access.
问题总结:是因为我ftp Ubuntu机器get密钥文件到本地的时候权限变了,ssh代理拒绝代理了。
 


网站公告

今日签到

点亮在社区的每一天
去签到