0%

Git(二): SSH登录

Git在本地和远程仓库进行同步可以通过SSH协议,其速度快、安全性高,这里简要介绍本地创建ssh密钥的方法及连接配置

figure

创建公钥密钥

使用ssh-keygen命令生成ssh公钥密钥,-t 指定加密算法,一般使用rsa, -f 指定公钥密钥文件名, -C 指定账号备注信息,一般填邮箱

1
2
ssh-keygen -t rsa -f filename -C "youremail@example.com"
ssh-keygen -t rsa -f github -C "123456@qq.com" # example 1
  • Windows : 在当前用户目录下 C:\Users\[username]\.ssh 下执行 ssh-keygen 命令,如果没有.ssh文件夹,可以自行建立,由于Windows GUI下,无法使用以 . 开头的文件夹名,可以使用下述两种命令创建。 [username]为用户名,管理员账号即为Administrator
1
mkdir .ssh      #  Git Bash 命令
  • Mac : 在当前用户目录下 ~/.ssh 下执行 ssh-keygen 命令,如果没有.ssh文件夹,可使用下述命令自行建立
1
mkdir .ssh      # zsh 命令

配置SSH Config文件

配置.ssh目录下的 config 配置文件,如若没有,则先自行创建该文件。按照如下所述配置,可以添加多个服务器的配置,SSH连接时,根据Host自动判断使用哪个ssh配置项

1
2
3
4
5
6
7
8
9
10
11
...
#For Github
Host github.com # 主机别名
HostName github.com # 主机名
Port 22 # 端口号
User username # 用户名
IdentityFile C:\Users\Administrator\.ssh\id_rsa_github # 指定密钥位置

#For GitBit
Host 192.168.4.1 # 主机别名
...    

Note:

  1. 主机别名Host 建议使用 主机名HostName(ip/域名),否则可能会出现无法正确匹配配置项,无法连接的错误
  2. 设置Github的SSH协议认证登录时,config配置文件中的User项应该配置为git,然后,执行ssh -T github.com命令测试SSH配置文件是否正确
请我喝杯咖啡捏~
  • 本文作者: Aaron Zhu
  • 本文链接: https://xyzghio.xyz/SSHLogin/
  • 版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-ND 许可协议。转载请注明出处!

欢迎关注我的微信公众号:青灯抽丝