首页 > 解决方案 > 无法指向 Jenkins 主机上 ~/.ssh 中的 ssh 密钥

问题描述

我已经安装了 SSH 代理插件来使用 SSH 身份验证来提取 Git 存储库。我想使用位于系统文件中的 SSH 密钥(来自 Jenkins 主~/.ssh选项)。这是从官方插件页面截取的屏幕截图:

来自官方插件页面的屏幕

不幸的是,我没有看到这个选项。我只能选择“直接输入”。请查看我的截图。

我的截图

我配置错了吗?

标签: jenkinsjenkins-pluginsssh-agent

解决方案


这是一个相对较新的变化,在安全公告 440 中进行了解释:https ://jenkins.io/security/advisory/2018-06-25/

SECURITY-440 / CVE-2018-1000601 SSH Credentials Plugin 允许使用“来自 Jenkins master 上的文件”的密钥创建 SSH 凭证。凭据绑定插件 1.13 和更高版本允许将 SSH 凭据绑定到环境变量。结合起来,这两个功能允许具有配置作业权限的用户通过创建引用 Jenkins 主机上的任意文件的 SSH 凭证并将其绑定到作业中的环境变量来读取 Jenkins 主机上的任意文件。

SSH 凭据插件不再支持来自 Jenkins 主文件系统上的文件的 SSH 凭据,既不支持用户指定的文件路径,也不支持 ~/.ssh。这些类型的现有 SSH 凭证被迁移到“直接输入”的 SSH 凭证。


推荐阅读