一、指定目录生成指定私钥和公钥

1.创建文件夹

git mkdir .myssh1

2.创建私钥公钥

ssh-keygen -t rsa -C 'this is my rsa' -f ~/.myssh1/my_rsa1

在这里插入图片描述

3.ssh-keygen 命令

语法
ssh-keygen(选项)
选项
-b:指定密钥长度;
-e:读取openssh的私钥或者公钥文件;
-C:添加注释;
-f:指定用来保存密钥的文件名;
-i:读取未加密的ssh-v2兼容的私钥/公钥文件,然后在标准输出设备上显示openssh兼容的私钥/公钥;
-l:显示公钥文件的指纹数据;
-N:提供一个新密语;
-P:提供(旧)密语;
-q:静默模式;
-t:指定要创建的密钥类型。

3.查看生成的私钥公钥权限

在这里插入图片描述

4.不添加公钥,直接克隆gitee上的仓库

liu@ubuntu:~$ git clone git@gitee.com:liuxiao00001/test002.git
正克隆到 'test002'...
git@gitee.com: Permission denied (publickey).
fatal: 无法读取远程仓库。

请确认您有正确的访问权限并且仓库存在。

5.gitee添加公钥

liu@ubuntu:~/.myssh1$ cat my_rsa1.pub 
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDcdogzXmfaWtWsGwK6cg/RYpFVpKtKZ4oACWSWXZsNkU37HQjVu81W9roYBkVSVNfuJWlwPTCxoYn1TV6d+G1nm8hwjQAIO/Gi6/uh4Hd7uMjhYtmnNuUssDUowJAp2l4qQwfnrVtdpCFXzn10O4EItj2gsXcCkpbE8rw/u6y8U/XxMbLoDRFYeVEL6RB2PwYe1lw1h1FEoLStbQgWaO+FTctG/iX4vTP3U9SYZJFoS4XIRpZjzQir6jzKotrx6sbbxovLcYw10Psa6Iodd8+6JbtbzP9+mDgpBuKDM0liY/ez9+5y6f60Mgv8cMfj1Lc4jkSAiOTNal+6VeKppfxiiu+aiqdVtHza7BkVSpJZbuqMsZsmPeHP1cpffIeDQeksEJmoHrWZFs4w6/AqUu6p6DBqhTNY/Lw2YBcCedGILy6chO4EuXtgWHQKCy4WoLshtSVrZZOhaKfAZI6l/4WuT86xEHNWVTw0UGwEQobVxU0FnZIGr4aAURNTA2hIKsE= this is my rsa
liu@ubuntu:~/.myssh1$ 

在这里插入图片描述

6.添加公钥后再次克隆SSH

依然显示如下错误

liu@ubuntu:~$ git clone git@gitee.com:liuxiao00001/test002.git
正克隆到 'test002'...
git@gitee.com: Permission denied (publickey).
fatal: 无法读取远程仓库。

请确认您有正确的访问权限并且仓库存在。
liu@ubuntu:~$ 


7.验证远程gitee到本地SSH是否信任

发现不信任

liu@ubuntu:~$ ssh -T git@gitee.com
git@gitee.com: Permission denied (publickey).
liu@ubuntu:~$ 

8.添加本地私钥到信任表

liu@ubuntu:~$ ssh-add ~/.myssh1/my_rsa1
Identity added: /home/liu/.myssh1/my_rsa1 (this is my rsa)
liu@ubuntu:~$ 

9.再次验证是否信任

显示如下代表信任

liu@ubuntu:~$ ssh -T git@gitee.com
Hi 刘小平! You've successfully authenticated, but GITEE.COM does not provide shell access.
liu@ubuntu:~$ 

10.再次克隆SSH仓库

liu@ubuntu:~$ git clone git@gitee.com:liuxiao00001/test002.git
正克隆到 'test002'...
remote: Enumerating objects: 4, done.
remote: Counting objects: 100% (4/4), done.
remote: Compressing objects: 100% (4/4), done.
remote: Total 4 (delta 0), reused 0 (delta 0), pack-reused 0
接收对象中: 100% (4/4), 完成.
liu@ubuntu:~$ cd test002
liu@ubuntu:~/test002$ ls
README.en.md  README.md
liu@ubuntu:~/test002$ 

11.git log

liu@ubuntu:~/test002$ git log
commit 3c12c5bb0c9c63d1758bfc38d90585b264c62233 (HEAD -> master, origin/master, origin/HEAD)
Author: 刘小平 <2921603708@qq.com>
Date:   Tue Jul 5 07:44:10 2022 +0000

    Initial commit
liu@ubuntu:~/test002$ 

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐