GitHub 添加 SSH 连接密钥

1. Git 全局设置 (Git Bash命令

1
2
git config --global user.name "meimolihan" # 设置用户名
git config --global user.email "meimolihan@gmail.com" # 设置用户邮箱

2. 生成 GitHub RSA 密钥(4096 位) (Git Bash命令

1
ssh-keygen -t rsa -b 4096 -C "meimolihan@gmail.com" -f ~/.ssh/id_rsa_github

3. 复制GitHub密钥,到剪切板

1
2
# Git Bash命令,复制到 Windows 剪切板
cat ~/.ssh/id_rsa_github.pub | clip.exe
1
2
# linux命令,手动复制密钥
cat ~/.ssh/id_rsa_github.pub

登录 GitHub,进入「设置」→「SSH 公钥」,添加刚才复制的公钥。

4. 创建 GitHub 代码托管平台身份验证的SSH 私钥文件 (Git Bash命令

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
mkdir -p ~/.ssh
chmod 700 ~/.ssh
cat > ~/.ssh/config << EOF
Host github.com
User git # 用于连接的用户名
IdentityFile ~/.ssh/id_rsa_github # 指定私钥文件路径
Hostname ssh.github.com # 用于 SSH 连接的特定主机名
Port 443 # 指定连接时的端口号

Host gitee.com
User git # 用于连接的用户名
IdentityFile ~/.ssh/id_rsa_gitee # 指定私钥文件路径
IdentitiesOnly yes # 仅使用指定的私钥进行认证
EOF
chmod 600 ~/.ssh/config
cat ~/.ssh/config

5. 添加GitHub的主机密钥 (Git Bash命令

1
sudo ssh-keyscan -t ed25519 github.com >> ~/.ssh/known_hosts

6. 验证 GitHub 连接 (Git Bash命令

1
ssh -T git@github.com 

$ ssh -T git@github.com
Hi meimolihan! You’ve successfully authenticated, but GitHub does not provide shell access.

嗨,meimolihan!你已经成功进行了身份验证,但是 GitHub 不提供 shell 访问权限。

7、查看写入是否成功

1
cat ~/.ssh/known_hosts

预期显示内容

1
2
3
4
5
6
root@FnOS:~# cat ~/.ssh/known_hosts
gitee.com ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEKxHSJ7084RmkJ4YdEi5tngynE8aZe2uEoVVsB/OvYN

github.com ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOMqqnkVzrm0SdG6UOoqKLsabgH5C9okWi0dh2l9GKJl
|1|bzw3j+8DI+9RgLAzAZdQKexoWM8=|f3Bxcts2uQzDJJ0Wb0YUM60Yqc4= ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCj7ndNxQowgcQnjshcLrqPEiiphnt+VTTvDP6mHBL9j1aNUkY4Ue1gvwnGLVlOhGeYrnZaMgRK6+PKCUXaDbC7qtbW8gIkhL7aGCsOr/C56SJMy/BCZfxd1nWzAOxSDPgVsmerOBYfNqltV9/hWCqBywINIR+5dIg6JTJ72pcEpEjcYgXkE2YEFXV1JHnsKgbLWNlhScqb2UmyRkQyytRLtL+38TGxkxCflmO+5Z8CSSNY7GidjMIZ7Q4zMjA2n1nGrlTDkzwDCsw+wqFPGQA179cnfGWOWRVruj16z6XyvxvjJwbz0wQZ75XK5tKSb7FNyeIEs4TT4jk+S4dhPeAUC5y+bDYirYgM4GC7uEnztnZyaVWQ7B381AK4Qdrwt51ZqExKbQpTUNn+EjqoTwvqNj4kqx5QUCI0ThS/YkOxJCXmPUWZbhjpCg56i+2aB6CmK2JGhn57K5mj0MNdBXA4/WnwH6XoPWJzK5Nyu2zB3nAZp+S5hpQs+p1vN1/wsjk=
|1|9b3z8FBBzXpAGeBRVHFx81E0Pw4=|ILx1dWLLIvT12ou1og/bNg7j+Mc= ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBEmKSENjQEezOmxkZMy7opKgwFB9nkt5YRrYMjNuG5N87uRgg6CLrbo5wAdT/y6v0mKV0U2w0WZ2YB/++Tpockg=

Gitee 添加 SSH 连接密钥

1. Git 全局设置 (Git Bash命令

1
2
git config --global user.name "meimolihan" # 设置用户名
git config --global user.email "meimolihan@gmail.com" # 设置用户邮箱

2. 生成 Gitee RSA 密钥(4096 位) (Git Bash命令

1
ssh-keygen -t rsa -b 4096 -C "meimolihan@gmail.com" -f ~/.ssh/id_rsa_gitee

3. 复制Gitee密钥,到剪切板 (CMD 命令

1
2
# Git Bash命令,复制到 Windows 剪切板
cat ~/.ssh/id_rsa_github.pub | clip.exe
1
2
# linux命令,手动复制密钥
cat ~/.ssh/id_rsa_gitee.pub

登录 Gitee,进入「设置」→「SSH 公钥」,添加刚才复制的公钥。

4. 创建 Gitee 代码托管平台身份验证的SSH 私钥文件 (Git Bash命令

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
mkdir -p ~/.ssh
chmod 700 ~/.ssh
cat > ~/.ssh/config << EOF
Host github.com
User git # 用于连接的用户名
IdentityFile ~/.ssh/id_rsa_github # 指定私钥文件路径
Hostname ssh.github.com # 用于 SSH 连接的特定主机名
Port 443 # 指定连接时的端口号

Host gitee.com
User git # 用于连接的用户名
IdentityFile ~/.ssh/id_rsa_gitee # 指定私钥文件路径
IdentitiesOnly yes # 仅使用指定的私钥进行认证
EOF
chmod 600 ~/.ssh/config
cat ~/.ssh/config

5. 添加Gitee的主机密钥 (Git Bash命令

1
ssh-keyscan -t ed25519 gitee.com >> ~/.ssh/known_hosts

6. 验证 Gitee 连接 (Git Bash命令

1
ssh -T git@gitee.com

$ ssh -T git@gitee.com
Hi meimolihan(@meimolihan)! You’ve successfully authenticated, but GITEE.COM does not provide shell access.

嗨,meimolihan(@meimolihan)!你已成功通过身份验证,但 GITEE.COM 不提供 shell 访问权限。

7、查看写入是否成功

1
cat ~/.ssh/known_hosts

预期显示内容

1
2
3
4
5
6
root@FnOS:~# cat ~/.ssh/known_hosts
gitee.com ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEKxHSJ7084RmkJ4YdEi5tngynE8aZe2uEoVVsB/OvYN

github.com ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOMqqnkVzrm0SdG6UOoqKLsabgH5C9okWi0dh2l9GKJl
|1|bzw3j+8DI+9RgLAzAZdQKexoWM8=|f3Bxcts2uQzDJJ0Wb0YUM60Yqc4= ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCj7ndNxQowgcQnjshcLrqPEiiphnt+VTTvDP6mHBL9j1aNUkY4Ue1gvwnGLVlOhGeYrnZaMgRK6+PKCUXaDbC7qtbW8gIkhL7aGCsOr/C56SJMy/BCZfxd1nWzAOxSDPgVsmerOBYfNqltV9/hWCqBywINIR+5dIg6JTJ72pcEpEjcYgXkE2YEFXV1JHnsKgbLWNlhScqb2UmyRkQyytRLtL+38TGxkxCflmO+5Z8CSSNY7GidjMIZ7Q4zMjA2n1nGrlTDkzwDCsw+wqFPGQA179cnfGWOWRVruj16z6XyvxvjJwbz0wQZ75XK5tKSb7FNyeIEs4TT4jk+S4dhPeAUC5y+bDYirYgM4GC7uEnztnZyaVWQ7B381AK4Qdrwt51ZqExKbQpTUNn+EjqoTwvqNj4kqx5QUCI0ThS/YkOxJCXmPUWZbhjpCg56i+2aB6CmK2JGhn57K5mj0MNdBXA4/WnwH6XoPWJzK5Nyu2zB3nAZp+S5hpQs+p1vN1/wsjk=
|1|9b3z8FBBzXpAGeBRVHFx81E0Pw4=|ILx1dWLLIvT12ou1og/bNg7j+Mc= ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBEmKSENjQEezOmxkZMy7opKgwFB9nkt5YRrYMjNuG5N87uRgg6CLrbo5wAdT/y6v0mKV0U2w0WZ2YB/++Tpockg=