jenkins+github配置完成后,能够实现在提交pull request或者直接push时,能够将提交的代码拉去一份到服务器本地,并自动merge;但是代码拉去下来了,部署环境的时候却需要输入登录服务器的登陆名跟密码;jenkins部署都是自动完成的,万一每次都需要输入用户名跟密码后,才能操作服务器上的代码进行环境部署,那就太不自动化了;所以需要配置ssh-key让git到服务器切换自如,不用再验证身份;

  github官网给的配置的文章链接:https://help.github.com/articles/connecting-to-github-with-ssh/

关于ssh:

  使用SSH协议,您可以连接和验证远程服务器和服务。 使用SSH密钥,您可以连接到GitHub,而无需在每次访问时提供您的用户名或密码。

验证是否已经存在ssh keys:

  在你创建一个新的ssh key之前,需要先确认你的服务器系统中是否已经存在了SSH Keys;

  1、打开服务器连接终端;

  2、输入如下命令确定是否已经存在ssh keys:

    ls -al ~/ .ssh

  看下返回的结果中是否已经存在了.pub结尾的文件,如果没有需要生成一个新的,如果存在了,直接看将ssh keys配置到github account;

  

生成新的ssh keys:

  1、在服务器终端命令行中,输入:

    ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

  其中,"your_email@example.com"是你的github关联的邮箱;

  2、当你看到如下提示,直接回车,接受给定的默认文件路径:

  

  3、回车后,会看到如下提示,需要你输入一个字符串,用来作为你的ssh keys的密码,需要输两遍哟;

  

  此时,应该在默认路径下,生成了两个文件,一个是id_rsa,另一个是id_rsa.pub;

  4、将SSH Key添加到ssh-agent,执行命令:

    eval $(ssh-agent -s)

  返回agent的Pid:

  

  执行命令:

    ssh-add ~/.ssh/id_rsa

  

  提示输入passphrase,输入passphrase后(建议直接回车,不用密码),提示添加成功;

将ssh keys配置到github account:

  1、打开生成的id_rsa.pub文件,复制文件内容;

  2、打开github主页,点击你的头像,下拉框中选择SettingsS;

  3、选择SSH and GPG keys;

  

  4、点击New SSH Key,如果本来就有存在,则点击Add SSH Key;

  5、在Title中输入这个SSH Key的标题,用来区分不同的SSH Key;将复制的id_rsa.pub文件的内容,黏贴到Key中;

  6、点击Add SSH Key,跳转的页面输入github的登陆密码;

验证ssh连接:

  1、服务器系统命令行输入如下命令:

    ssh -T git@github.com

  你会看到:

  

  或者

  

  2、输入yes回车,你会看到:

  

  这样你的密钥就设置好了,试一下拉取代码并部署环境是不是很666了;

七、配置ssh keys连通github跟ssh-agent的更多相关文章

  1. Generating SSH Keys for github

    由于最近电脑重装了Windows 8.1, 想用github维护一些代码.故不得不重新生成一下ssh key. 按https://help.github.com/articles/generating ...

  2. 添加SSH keys到github帐号

    使用git clone命令从github上同步github上的代码库时,如果使用SSH链接(如我自己的esesgrid项目:git@github.com:hmilycc/esesgrid.git),而 ...

  3. $ ssh -T git@github.com ssh: connect to host ssh.github.com port 22: Connection timed out

    在C:/用户/用户名/.ssh中添加几个文件 之前的电脑生成都是四个文件,分别是 id_rsa  id_rsa.pub  config known_hosts 不知道为什么在另一台电脑上却生成两个文件 ...

  4. 我的Python成长之路---GitHub使用克隆GitHub(SSH key配置)

    六.克隆GitHub仓库 1.创建仓库目录,目录位置没有要求,比如D:\learngit. 2.配置ssh(如果不配置会每次都输入用户名和密码) 使用TortoiseGit生成ssh-key:开始菜单 ...

  5. GitHub 添加 SSH keys

    首先在本地创建 SSH Keys $ ssh-keygen -t rsa -C "18817801185@163.com" 后面的邮箱即为 github 注册邮箱,之后会要求确认路 ...

  6. 为Github 托管项目的访问添加SSH keys

    为了便于访问远程仓库,各个协作者将自己的本地的项目内容推送到远程仓库中,使用 SSH keys 验证github的好处:不用每次提交代码时都输入用户名和密码. 如果SSH key没有添加到github ...

  7. Git多个SSH KEYS解决方案(含windows自动化、TortoiseGit、SourceTree等)

    工作过程中,经常会使用到多个git仓库,每个git仓库对应一个账号,可以理解为每个git仓库对应一个ssh key,因此我们需要管理多个ssh key.   一.快速创建ssh key   1. 创建 ...

  8. github使用ssh秘钥的好处以及设置(转)

    git使用https协议,每次pull,push都要输入密码,使用git协议,使用ssh秘钥,可以省去每次输密码 大概需要三个步骤:一.本地生成密钥对:二.设置github上的公钥:三.修改git的r ...

  9. 创建 SSH Keys

    SSH 为 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定.利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题.简单说,SSH是 ...

随机推荐

  1. 动态规划-背包问题 Knapsack

    2018-03-15 13:11:12 背包问题(Knapsack problem)是一种组合优化的NP完全问题.问题可以描述为:给定一组物品,每种物品都有自己的重量和价格,在限定的总重量内,我们如何 ...

  2. Java中HashMap的put与get方法原理

    直接上代码 注: 代码来自于 Java 9 put方法 public V put(K key, V value) { return putVal(hash(key), key, value, fals ...

  3. django使用bootstrap快速美化 admin后台

    使用django-admin-bootstrappe快速美化后台 两步: 1.pip install django-admin-bootstrapped  安装应用 2.在setting.py里面添加 ...

  4. VS2010快捷键大全----养成良好的习惯

    VS2010版快捷键Ctrl+E,D ----格式化全部代码 Ctrl+E,F ----格式化选中的代码 CTRL + SHIFT + B生成解决方案 CTRL + F7 生成编译 CTRL + O ...

  5. HDU 4004 二分

    The Frog's Games Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65768/65768 K (Java/Others) ...

  6. MarkdownPad2 在 Windows10 下 预览无法显示

    Windows10下面一直报错,无法使用. 解决方法: 安装 Awesomium 1.6.6 SDK,如果还是有问题,请继续安装:Microsoft's DirectX End-User Runtim ...

  7. Faces人脸识别项目简介

    Faces人脸识别 分为两个模块,Faces文件夹下存放人脸识别算法的代码,Web文件夹下存放网站搭建的代码 详情请查看各个模块下的readme文档 项目简介 核心算法 一款基于Dlib.opencv ...

  8. Cobbler自动化安装部署系统

    自动化安装部署 https://www.cnblogs.com/nulige/p/6796593.html PXE+Kickstart工作原理 pxe+kickstart工作流程 网卡上的pxe芯片有 ...

  9. 20155224 2016-2017-2 《Java程序设计》第8周学习总结

    20155224 2016-2017-2 <Java程序设计>第X周学习总结 教材学习内容总结 第十四章 NIO使用频道(Channel)来衔接数据节点,在处理数据时,NIO可以设定缓冲区 ...

  10. 捕捉过滤器(CaptureFilters)和显示过滤器(DisplayFilters)--Wireshark

    Wireshark的基本使用——过滤器 前言 网络上关于Wireshark的教程已有不少,博主就简单介绍一下Wireshark分析数据包时最重要的技巧之一的过滤器..一次性嗅探到的数据包有很多,想要高 ...