首页/新闻资讯/正文详情

jenkins gitee ssh 免密

发布时间:2026/9/25 21:03:39 来源:云帆数科 栏目:资讯中心
jenkins gitee ssh 免密
要配置 Gitee 和 Jenkins 的 SSH 密钥核心思路是在 Jenkins 服务器上生成一对密钥把公钥放到 Gitee把私钥存到 Jenkins 凭据里最后让 Jenkins 信任 Gitee 的主机指纹。 引言本文面向需要将Jenkins 与 Gitee 进行 SSH 集成的开发者帮助你在 Jenkins 服务器与 Gitee 之间建立安全、稳定的代码拉取通道。前置条件已安装并运行 Jenkins 服务器。已注册 Gitee 账号并拥有需要集成的代码仓库。本文涵盖以下六个主要步骤在 Jenkins 服务器上生成 SSH 密钥对。将公钥添加到 Gitee。在 Jenkins 中添加 SSH 凭据。解决 Host Key 验证问题。调整 Jenkins 的 Git Host Key 验证策略。在任务中验证配置是否成功。文末还附有「常见问题排查」章节帮助你快速定位并解决配置过程中可能遇到的各类错误。下面是 Jenkins 与 Gitee SSH 集成的整体流程图是否在 Jenkins 服务器生成 SSH 密钥对将公钥添加到 Gitee在 Jenkins 中添加 SSH 凭据解决 Host Key 验证问题调整 Jenkins 的 Git Host Key 验证策略在任务中验证配置是否成功验证是否通过✅ 配置完成成功拉取代码 参考常见问题排查定位并解决对应错误 第一步在 Jenkins 服务器上生成 SSH 密钥对登录到 Jenkins 服务器切换到 Jenkins 运行用户通常是jenkins生成密钥对# 切换到 jenkins 用户如果 Jenkins 以该用户运行sudosu-s/bin/bash jenkins# 生成密钥推荐使用 ed25519 算法更安全高效ssh-keygen-ted25519-Cjenkinsgitee执行时直接连续按三次回车即可不设置密钥文件路径使用默认不设置密码短语passphrase。生成的密钥对会保存在~/.ssh/目录下私钥~/.ssh/id_ed25519⚠️ 不要泄露公钥~/.ssh/id_ed25519.pub需要添加到 Giteeee 第二步将公钥添加到 Gitee查看并复制公钥内容cat~/.ssh/id_ed25519.pub然后登录 Gitee按以下路径添加公钥点击右上角头像 → 设置。左侧菜单选择 SSH 公钥。点击 添加公钥。标题可填 Jenkins Server公钥框内粘贴刚才复制的内容确定即可。对于单个仓库也可以使用「部署公钥」仓库主页 → 管理 → 部署公钥管理 → 添加部署公钥。 第三步在 Jenkins 中添加 SSH 凭据私钥进入 Jenkins → Manage Jenkins → Manage Credentials → Global credentials → Add Credentials。凭据类型选择 SSH Username with private key。ID 可填 gitee-ssh-key便于识别。Username 填写 git这是 Gitee SSH 访问的固定用户名不是你的 Gitee 账号名。勾选 Enter directly将私钥文件 ~/.ssh/id_ed25519 的全部内容粘贴进去。保存。️ 第四步解决 Host Key 验证问题这就是之前遇到的 Host key verification failed 的根源。必须在 Jenkins 服务器上以 jenkins 用户的身份把 Gitee 的主机指纹写入 known_hosts 文件。ts 文件。# 确保仍在 jenkins 用户下且 .ssh 目录存在mkdir-p~/.sshchmod700~/.ssh# 扫描 Gitee 的主机密钥并追加到 known_hostsssh-keyscan-ted25519,rsa gitee.com~/.ssh/known_hosts# 设置正确的权限权限不对 SSH 会忽略该文件chmod600~/.ssh/known_hosts之后可以测试一下ssh-Tgitgitee.com如果返回 Hi …! You’ve successfully authenticated…说明主机信任和公钥认证都已成功。⚙️ 第五步调整 Jenkins 的 Git Host Key为了让 Jenkins 的 Git 插件使用刚配置好的 known_hosts需要调整全局安全设置进入 Manage Jenkins → Security。找到 Git Host Key Verification Configuration。将 Host Key Verification Strategy 改为 Known hosts file默认值如果你之前改过就改回来。保存。。✅ 第六步在 Jenkins 的任务配置中验证回到Jenkins的任务配置中Repository URL 保持为gitgitee.com:ren-yong/web_demo.gitCredentials 选择刚刚创建的 gitee-ssh-key。保存后重新构建应该就能成功通过 SSH 拉取代码了。 常见问题排查问题一Permission denied (publickey)原因分析公钥未正确添加到 Gitee或 Jenkins 凭据中的私钥与 Gitee 上的公钥不匹配。解决步骤确认公钥已添加到 Gitee登录 Gitee → 设置 → SSH 公钥检查是否包含~/.ssh/id_ed25519.pub的内容。确认 Jenkins 凭据中的私钥与公钥配对在 Jenkins → Manage Credentials 中检查私钥内容是否与服务器上~/.ssh/id_ed25519一致。确认 Username 填写为git而不是你的 Gitee 账号名。验证命令# 在 Jenkins 服务器上测试认证ssh-Tgitgitee.com如果返回Hi xxx! Youve successfully authenticated...说明认证成功。问题二Host key verification failed原因分析Jenkins 服务器上的known_hosts文件中没有 Gitee 的主机指纹或指纹不匹配。解决步骤以 jenkins 用户身份重新扫描并写入主机指纹sudosu-s/bin/bash jenkinsmkdir-p~/.sshchmod700~/.ssh ssh-keyscan-ted25519,rsa gitee.com~/.ssh/known_hostschmod600~/.ssh/known_hosts如果之前写入过错误的指纹先清除再重新添加ssh-keygen-Rgitee.com ssh-keyscan-ted25519,rsa gitee.com~/.ssh/known_hosts确认 Jenkins 的 Git Host Key Verification Strategy 设置为Known hosts file见第五步。验证命令ssh-Tgitgitee.com问题三Could not resolve hostname gitee.com原因分析Jenkins 服务器无法解析gitee.com域名通常是 DNS 配置问题或网络不通。解决步骤检查服务器网络连通性pinggitee.com检查 DNS 配置确认/etc/resolv.conf中有有效的 DNS 服务器如8.8.8.8或114.114.114.114。如果服务器在公司内网可能需要配置代理或内网 DNS。验证命令# 测试域名解析nslookupgitee.com# 或diggitee.com问题四Connection timed out原因分析服务器无法访问 Gitee 的 SSH 端口默认 22可能是防火墙拦截或网络策略限制。解决步骤测试 SSH 端口连通性ssh-vTgitgitee.com检查防火墙规则# 查看防火墙状态CentOS/RHELsudofirewall-cmd --list-all# 或Ubuntusudoufw status如果公司网络限制外网 SSH可尝试使用 Gitee 的备用 SSH 端口如 443ssh-T-p443gitssh.gitee.com验证命令# 测试 443 端口连接ssh-T-p443gitssh.gitee.com问题五Repository not found原因分析Jenkins 任务中的仓库地址错误或当前账号没有该仓库的访问权限。解决步骤检查 Repository URL 是否正确格式应为gitgitee.com:用户名/仓库名.git。确认 Gitee 账号对该仓库有访问权限公开仓库无需权限私有仓库需添加协作者或使用部署公钥。如果使用部署公钥确认该公钥已添加到对应仓库的「部署公钥管理」中。验证命令# 测试git ls-remote gitgitee.com:用户名/仓库名.git下面是常见问题的排查决策流程图帮助你快速定位问题快速定位问题Permission denied (publickey)Host key verification failedCould not resolve hostnameConnection timed outRepository not found是否SSH 连接失败报错类型检查公钥是否添加到 Gitee重新扫描并写入主机指纹检查 DNS 配置与网络连通性检查防火墙与 SSH 端口检查仓库地址与访问权限验证ssh -T gitgitee.com验证nslookup gitee.com验证ssh -T -p 443 gitssh.gitee.com验证git ls-remote是否成功✅ 问题解决 重新检查配置

相关推荐

从创意画布到可编辑成片,开源 AI 正在重做视频工作流
从创意画布到可编辑成片,开源 AI 正在重做视频工作流

AI 视频创作正在从「一次生成一段素材」,走向能够管理剧本、角色、分镜、声音、时间线和版本的完整工作流。 创作者需要的,也不只是更快地生成视频,而是让每个创作环节都能被编排、调整、复用和继续编辑。 本期 G-Star 推荐,聚焦… · 2026/9/25 21:03:39

中国AI未来有哪些发展方向
中国AI未来有哪些发展方向

结合2026年“十五五”开局的官方部署和产业技术演进趋势,中国AI未来的核心发展方向已经形成清晰的分层布局,既覆盖底层技术攻坚,也锚定实体产业落地,同时兼顾前沿交叉领域的前瞻探索: 1. 算力基础设施全国一体化协同 核… · 2026/9/25 21:03:39

Agent 开发学习路线:从零到 大厂Offer
Agent 开发学习路线:从零到 大厂Offer

2026 年的 AI 应用岗,已经从“会用大模型”变成“会造 Agent”。这条路线按六个阶段拆开,每阶段只留知识点 动手任务 验收标准 面试考点,照着做就行。先搞清楚:Agent 工程师在考什么层级能力一句话L1 基础Python / FastAPI / T… · 2026/9/25 21:03:32

Atlas 300V 24G昇腾AI推理卡部署YOLO完整实战指南
Atlas 300V 24G昇腾AI推理卡部署YOLO完整实战指南

手里同时插着A100和Atlas 300V Pro 24G的人,大概都听过这个灵魂拷问:Atlas 300V 24G到底算不算运算加速卡?答案是:算,而且很能算。这块卡虽然经常被归类到“视频解析”产品线里,但内核是华为昇腾310P AI处理… · 2026/9/25 21:44:32

Atlas 300V 24G实战部署YOLO:从环境配置到推理跑通
Atlas 300V 24G实战部署YOLO:从环境配置到推理跑通

最近后台好几个朋友都在问同一个词:atlas。有的是搜“atlas部署yolo”进来的,问昇腾的推理卡怎么把YOLOv5跑起来;有的更直接——“atlas 300v 24g 是运算加速卡吗”,一看就是采购清单里出现这型号,想确认自己到底买了块… · 2026/9/25 21:44:32

学Simulink——基于Simulink的硬件在环(HIL)电机控制器测试平台
学Simulink——基于Simulink的硬件在环(HIL)电机控制器测试平台

目录 手把手教你学Simulink ——基于Simulink的硬件在环(HIL)电机控制器测试平台 一、引言:为什么“纯仿真”不够?真实控制器必须经受HIL考验! 二、什么是电机HIL?核心架构解析 HIL基本原理 三大核心优势: 三、应用场景:伺服驱动器量产前的全面验证 四、建模与实… · 2026/9/25 21:44:20

显卡 显存 硬盘 内存 算力 CPU GPU名词区分
显卡 显存 硬盘 内存 算力 CPU GPU名词区分

数据流向:硬盘>-内存>-显存一、核心名词定义 相互关系(面向模型训练 / 本地部署)先一句话总览:CPU:通用计算总管(适用于复杂的逻辑运算);GPU:并行计算加速器&… · 2026/9/25 21:44:14

23 种设计模式的通俗解释,虽然有点污
23 种设计模式的通俗解释,虽然有点污

一、写在前面:设计模式到底在解决什么很多初学者第一次听说“设计模式”时,脑子里冒出的画面是厚厚的《GoF 设计模式》原书、满纸的 UML 类图和永远记不住的名字。但说实话,设计模式并不是什么高深莫测的咒语,它更像是程序员在长期… · 2026/9/25 21:43:35

GUI-Owl-1.5实测:多模态GUI智能体如何突破自动化脚本脆弱性
GUI-Owl-1.5实测:多模态GUI智能体如何突破自动化脚本脆弱性

用了两周把 GUI-Owl-1.5 拉下来跑通,又把几个真实项目里的任务喂进去试了一遍,有些话想写出来。做 GUI 自动化这行当久了,最大的感受就是:脚本不脆弱才叫新闻。换台显示器分辨率,坐标全偏;UI 改个版式&… · 2026/9/25 21:43:35

数值优化(Numerical Optimization)学习系列-03-共轭梯度方法(Conjugate Gradient)
数值优化(Numerical Optimization)学习系列-03-共轭梯度方法(Conjugate Gradient)

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:31

创维E900V22D刷机全攻略:S905L3SB芯片兼容性解析与救砖实战
创维E900V22D刷机全攻略:S905L3SB芯片兼容性解析与救砖实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:31

MQTT协议原理与Broker服务器搭建实战:从Mosquitto到EMQX
MQTT协议原理与Broker服务器搭建实战:从Mosquitto到EMQX

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:37

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码