git push免密
1、到本地电脑ssh目录
$ cd ~/.ssh/
2、查看ssh目录是否有id_rsa.pub文件,如果没有,就生成公钥
$ ssh-keygen
出现以下选项
Generating public/private rsa key pair.
Enter file in which to save the key (/home/zhx/.ssh/id_rsa): //直接回车
Enter passphrase (empty for no passphrase): //输入公钥密码
Enter same passphrase again: //再次输入公钥密码
Your identification has been saved in /home/zhx/.ssh/id_rsa.
Your public key has been saved in /home/zhx/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:FpewksPjpXaPiOrCuUqvgUKw3hFMkBKU7fF8fUvi5z0 zhx@zhx-HP-ProDesk-600-G3-PCI-MT
The key's randomart image is:
+---[RSA 2048]----+
|o+=. . |
|.ooo . . o . |
|o .o+ * = o |
|.. ..+ B = o |
|.. . = S + . |
|+ . .o + + o |
|++... . . + . |
|+oo. . E |
|o==. . |
+----[SHA256]-----+
查看是否生成公钥:
$ ls
如果有id_rsa、id_rsa.pub两个文件,说明公钥生成成功
3、将本地ssh公钥复制到服务器
$ scp ./id_rsa.pub robotai@X.X.X.X:/home/robotai
4、在服务器上查看ssh目录中的authorized_keys中是否有你的ssh公钥
$ vim .ssh/authorized_keys
可以看到该文件中没有本地电脑密钥(用户名为zhx),如果有本地电脑公钥,则删除自己公钥那行
5、将步骤3中复制过来的公钥添加到authorized_keys文件中
$ cat ./id_rsa.pub >> .ssh/authorized_keys
此时查看authorized_keys文件可以看到本地电脑公钥
6、本地电脑进入项目
$ cd ~/work/RobitAI
7、$ git push
提示:
sign_and_send_pubkey: signing failed: agent refused operation
robotai@192.168.221.11’s password:
将公钥标识添加到身份验证代理中:
$ ssh-add
提示:
Enter passphrase for /home/zhx/.ssh/id_rsa:
Identity added: /home/zhx/.ssh/id_rsa (/home/zhx/.ssh/id_rsa)
再次:
$ git push
提示:
Everything up-to-date
说明免密git push 设置成功