为Jenkins添加SSH全局凭证

目录
  • 一、什么是凭证
    • 1、凭据简介
    • 2、凭据分类
    • 3、凭据安全
  • 二、添加凭据
    • 1、创建的时候添加
    • 2、在凭证里面添加

一、什么是凭证

1、凭据简介

有许多第三方网站和应用程序可以与Jenkins进行交互,例如代码仓库GitHub等。

此类应用程序的系统管理员可以在应用程序中配置凭证以专供Jenkins使用。通常通过将访问控制应用于这些凭证来完成这项工作,以“锁定Jenkins可用的应用程序功能区域”。一旦Jenkins管理员在Jenkins中添加/配置这些凭证,Jenkins项目就可以使用凭证与这些第三方应用程序进行交互。

Jenkins中保存的凭证可以用于:

  • 适用于Jenkins的任何地方(即全局证书)。
  • 特定的Jenkins项目。
  • 特定的Jenkins用户。

2、凭据分类

Jenkins可以保存下面几种凭证:

  • Secret text:例如 API Token(例如GitHub的个人access token)。
  • Username with password:指的是登录GitHub的用户名和密码,可以作为单独的组件处理,也可以作为username:password格式的冒号分割字符串来处理。
  • Secret file:实际上是文件中的秘密内容。
  • SSH Username with private key:即使用私钥的SSH 用户名。这是一个SSH 秘钥对。公钥配置在GitHub上面,这里添加私钥。
  • Certificate:即证书。一个PKCS#12证书文件和可选的密码。
  • Docker Host Certificate Authentication:即Docker主机证书身份验证凭证。

这些凭证的分类可以在全局凭据里面看到:

3、凭据安全

为了确保安全,Jenkins中配置的凭据在Jenkins主实例中加密存储(通过Jenkins实例的ID来加密),并且只能通过它们的凭据ID在Pipeline项目中处理。

这样就最大限度地减少了向Jenkins用户暴露实际证书本身的可能性,并且限制了将功能证书从一个Jenkins实例复制到另一个Jenkins实例的能力。

二、添加凭据

我们这里以添加SSH Username with private key为例,讲解如何添加一个Jenkins的凭据。

在上面说过,SSH凭据需要一对私钥,所以我们首先需要生成SSH Key。

使用下面的命令可以生成SSH Key:

$ ssh-keygen -t rsa -C "your_email@youremail.com"

如下图所示:

所有选项都是默认,一直回车即可生成。生成之后在.ssh文件夹下就会生成文件,如下图所示:

一共会生成两个文件:

  • id_rsa。这个是私钥文件。
  • id_rsa.pub。这个是公钥文件,需要配置到GitHub上面。

登录GitHub,然后在账户下面选择“Settings”:

然后选择“SSH and GPG keys”:

然后点击“New SSH key”,把生成的id_rsa.pub文件里面的内容拷贝进来即可:

这样就添加完成了SSH key。

Jenkins在拉取git项目代码的时候,如果没有配置“证书凭证Credentials”或者配置的不对,就会出现如下图所示的报错信息:

这时候就需要添加证书凭证Credentials,有两种方式添加证书凭证。

1、创建的时候添加

点击Credentials后面的"Add",选择“Jenkins”,如下图所示:

然后选择“SSH Username with private key”,如下图所示:

选择Private Key,如下图所示:

把上面生成的私钥复制到这里,给Username起一个名称即可。

最后点击“添加”按钮即可完成添加SSH 凭证。

注意:这里在拷贝私钥的时候,一定要把生成的私钥文件里面的所有内容都拷贝进来。

在选择凭证的时候选择刚才添加的凭证,这时就不会在报错了:

2、在凭证里面添加

我们也可以在凭据里面添加

同样还是选择“SSH Username with private key”,如下图所示:

然后下面的步骤和刚才的就一样了,输入生成的私钥即可。这样就配置好了SSH凭据。

到此这篇关于为Jenkins添加SSH全局凭证的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • jenkins中通过Publish Over SSH插件将项目部署到远程机器上的讲解说明

    Publish Over SSH插件使用 在使用Publish Over SSH之前,需要制作SSH私钥.机器间做免密登录配置.假设机器A,ip为192.168.AA.AAA,机器B: 192.168.BB.BBB,机器A能够免密登录机器B,机器B能够免密登录机器A,制作方式是: 进入A机器,执行: cd ~ ssh-keygen -t rsa 通过下面的命令,表示可以通过机器192.168.AA.AAA免密登录到机器192.168.BB.BBB ssh-copy-id 192.168.BB.B

  • Jenkins 编译后使用SSH发布详解

    前言 想要实现自动发布编译好的apk,我们可以使用官方插件库里的如下插件. 你可以使用FTP SSH等方式自动化发布,当然你也可以写脚本实现复杂的发布操作. 我以Publish Over SSH为例简单讲解下(主要是目前没部署FTP服务 TAT) 因为不知道怎么使用这个插件,所以我查看了下官方文档 https://wiki.jenkins-ci.org/display/JENKINS/Publish+Over+SSH+Plugin 看得懂E文的推荐去看看,比我讲的详细的多了. 这也算是能力的锻炼

  • 为Jenkins添加SSH全局凭证

    目录 一.什么是凭证 1.凭据简介 2.凭据分类 3.凭据安全 二.添加凭据 1.创建的时候添加 2.在凭证里面添加 一.什么是凭证 1.凭据简介 有许多第三方网站和应用程序可以与Jenkins进行交互,例如代码仓库GitHub等. 此类应用程序的系统管理员可以在应用程序中配置凭证以专供Jenkins使用.通常通过将访问控制应用于这些凭证来完成这项工作,以“锁定Jenkins可用的应用程序功能区域”.一旦Jenkins管理员在Jenkins中添加/配置这些凭证,Jenkins项目就可以使用凭证与

  • Jenkins打包微服务构建Docker镜像运行的实现

    目录 环境准备 开始 1.GitLab远程仓库创建微服务项目 2.IDEA代码推送到Gitlab 3.Jenkins创建流水线项目 4.参数化构建 5.拉取远程仓库的构建脚本 6.编写远程审查脚本sonar-project.properties 构建脚本 环境准备 1.Jenkins 2.GitLab 3.SonarQube 4.Harbor 5.Docker 6.Maven 7.JDK1.8 8.微服务项目 以上技术部分在我之前的文章中有写过 这里就不过多细化的演示,本文章主要是连贯性的将微服

  • jenkins自动构建发布vue项目的方法步骤

    简介 Jenkins是一个开源的.提供友好操作界面的持续集成(CI)工具,起源于Hudson(Hudson是商用的),主要用于持续.自动的构建/测试软件项目.监控外部任务的运行(这个比较抽象,暂且写上,不做解释).Jenkins用Java语言编写,可在Tomcat等流行的servlet容器中运行,也可独立运行.通常与版本管理工具(SCM).构建工具结合使用.常用的版本控制工具有SVN.GIT,构建工具有Maven.Ant.Gradle. jenkins安装 1.安装JDK yum install

  • Jenkins一键打包部署SpringBoot应用

    目录 一.准备工作 二.Jenkins的安装及配置 三.打包部署SpringBoot应用 四.立即构建 一般而言,一个项目部署的由:拉取代码->构建->测试->打包->部署等过程组成,如果我们经常需要部署项目,特别是在微服务时代,服务特别多的情况下,不停的测试打包部署,那估计得有个人一整天专门做这事了,而这事又是繁琐的重复无意义的,所以就需要一套能够持续集成.持续交付.持续部署的自动化构建流程. Jenkins是开源CI&CD软件领导者,提供超过1000个插件来支持构建.部

  • Jenkins自动构建部署项目到远程服务器上的方法步骤

    1.下载jenkins 下载地址:https://jenkins.io/ 本地下载地址:https://www.jb51.net/softs/535167.html 启动jenkins方式有2种 1.1切换到jenkins.war包的存放目录 启动命令: java -jar  jenkins.war 启动jenkins 访问: localhost:8080 就能进入jenkins管理页面 1.2把jenkins.war放到tomcat的webapps目录下,然后去tomcat的bin目录下 启动

  • 帮你快速上手Jenkins并实现自动化部署

    一.下载与安装 Jenkins的下载可以直接在官网下载,方式还是比较简单的,官网提供了具体的下载和安装的步骤. sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key # 安装 yum install jenkins -y # 启

  • Jenkins自动部署SpringBoot项目实践教程

    目录 1.Jenkins安装 2.Jenkins插件安装 3.点击添加凭据 4.Jenkins环境配置 4.1.全局配置 4.2.系统配置 5.Jenkins自动部署SpringBoot项目 6.遇到问题 7.用到的命令 1.Jenkins安装 下载jenkins安装包,maven安装包:打开xftp将安装包上传到服务器:弄maven镜像:进入maven的conf文件夹,vim打开setting.xml文件添加阿里云镜像:wq!保存退出. <!-- 阿里镜像仓库 --> <mirrors

  • Jenkins一键打包部署SpringBoot应用的方法步骤

    目录 Jenkins简介 Jenkins的安装及配置 Docker环境下的安装 Jenkins的配置 角色权限管理 打包部署SpringBoot应用 在Jenkins中创建执行任务 任何简单操作的背后,都有一套相当复杂的机制.本文将以SpringBoot应用的在Docker环境下的打包部署为例,详细讲解如何使用Jenkins一键打包部署SpringBoot应用. Jenkins简介 Jenkins是开源CI&CD软件领导者,提供超过1000个插件来支持构建.部署.自动化,满足任何项目的需要.我们

  • jenkins插件Pipeline脚本jenkinsfile操作指南

    目录 前言 一,安装pipeline支持插件 二,创建流式Item 三,编写pipeline脚本 脚本如下: 添加运行参数 四,尝试构建任务 五,pipeline的一点技巧 文末结语 前言 jenkins是一款流行的开源持续集成软件,插件丰富,扩展灵活.2.0后推出pipeline流式构建,支持构建任务脚本化.本文主要旨在使用jenkins 的pipeline功能完成java maven项目的打包,上传jar到目标服务器.pipeline推出时间不长,实际使用的不是很多,网上基本没啥参考资料,官

  • 聊聊jenkins部署vue/react项目的问题

    目录 准备工作 1.安装参数化部署插件 2.安装好插件后,配置Nodejs环境 创建项目 构建 centOS安装jenkins 1.安装JDK 2.安装jenkins 3.配置jenkis的端口 4.启动jenkins jenkins安装请参考文末centOS安装jenkins. 准备工作 1.安装参数化部署插件 Git Parameter Plug-In git参数化构建,可选择分支.标签构建Extended Choice Parameter Plug-In 自定义参数化构建,可根据需要任意添

随机推荐