复制 ssh 密钥 id_rsa,使用 git 提示 too open

复制 ssh 密钥到另外一台电脑上,一般情况下无法直接使用,
情况如下:
直接使用 git clone 时也会有问题,提示 sign_and_send_pubkey: signing failed: agent refused operation:

需要先执行

ssh-add /home/用户名/.ssh/id\_rsa

但是情况和直接登录 ssh 时一样,会提示 permissions are too open (权限太大)

这是因为 ssh 密钥包含 私钥和公钥 两部分,而私钥的最初目的就是一个人在使用,复制 ssh 密钥这种做法并不推荐,所以才会提示 permissions are too open.
不过如果你明白了其中的风险,并且必须需要这么做,解决办法如下:
1.修改私有的访问权限

sudo chmod 600 /home/用户名/.ssh/id_rsa

2.修改 .ssh 目录的访问权限

sudo chmod 755 ~/.ssh

参考:
How to Fix “WARNING: UNPROTECTED PRIVATE KEY FILE!” on Mac and Linux

[密钥权限过大错误]ssh “permissions are too open” error