如何生成SSH key以及免密设置

创建ssh key以及免密设置

步骤

1.首先检查你的电脑是否已经有SSH Key?

运行git Bash客户端 ,输入如下代码:

$ cd ~/.ssh
$ ls

在这里插入图片描述

检查是否已经存在 id_rsa.pub 或 id_dsa.pub 文件,如果已经存在,说明你的电脑已经有 SSH Key,如果有并想重新创建,进入步骤2.否则进入步骤3

2.删除用户文件夹下的.ssh文件夹(C盘)

在这里插入图片描述

3.创建SSH Key

  • 配置全局的name和email,这里是的你github的name和email。

    git config --global user.name "XXX"
    git config --global user.email "XXXX@XXX.com"
    
  • 生成key

    ssh-keygen -t rsa -C "XXX@XXX.com"
    
  • 获取私钥

    cat ~/.ssh/id_rsa
    
  • 获取公钥

    cat ~/.ssh/id_rsa.pub
    

在这里插入图片描述

把红框部分复制到需要sshkey的地方添加即可;

复制生成后的 ssh key,通过仓库主页 「管理」->「部署公钥管理」->「添加部署公钥」 ,添加生成的 public key 添加到仓库中

添加后,在终端(Terminal)中输入

ssh -T git@gitee.com

首次使用需要确认并添加主机到本机SSH可信列表。若返回

 Hi XXX! You've successfully authenticated, but Gitee.com does not provide shell access.

内容,则证明添加成功!

4.解决 git 的Enter passphrase for key ‘/c/Users/Administrator/.ssh/id_rsa’ 问题.(免密设置)

  • 避免每次pull或者push都要输入密码,输入以下命令:

    
    ssh-keygen -p [-P old_passphrase] [-N new_passphrase] [-f keyfile]
    
    实例:ssh-keygen -p -P 123456 -N '' -f ~/.ssh/id_rsa
    
    
  • 打开git的bash命令,输入:

    vi ~/.profile
    
  • 输入"i",多行“~~~~~~”上面的插入以下内容:

    env=~/.ssh/agent.env
     
     
     
    agent_load_env () { test -f "$env" && . "$env" >| /dev/null ; }
     
     
     
    agent_start () {
     
        (umask 077; ssh-agent >| "$env")
     
        . "$env" >| /dev/null ; }
     
     
     
    agent_load_env
     
     
     
    # agent_run_state: 0=agent running w/ key; 1=agent w/o key; 2= agent not running
     
    agent_run_state=$(ssh-add -l >| /dev/null 2>&1; echo $?)
     
     
     
    if [ ! "$SSH_AUTH_SOCK" ] || [ $agent_run_state = 2 ]; then
     
        agent_start
     
        ssh-add
     
    elif [ "$SSH_AUTH_SOCK" ] && [ $agent_run_state = 1 ]; then
     
        ssh-add
     
    fi
     
     
     
    unset env
  • 按下“ESC”,在命令行下输入“:wq”。退出即可。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值