Jenkins SSH 身份验证:手动信任与手动提供的密钥

时间:2020-12-21 09:00:12

标签: jenkins ssh

关于 Jenkins 的 Github 文档“ssh-slaves-plugin”指定了几种 SSH 密钥验证策略,其中两个是“手动提供密钥验证策略”和“手动信任” em> 关键验证策略”。

手动提供关键验证策略如下:

<块引用>

检查远程主机提供的密钥是否与远程主机设置的密钥匹配 配置此连接的用户。

此连接所需的 SSH 密钥。这个键应该在 形成算法值,其中算法是 ssh-rsa 或 ssh-dss 之一,以及 value 是密钥的 Base 64 编码内容。钥匙应该是 放在 /etc/ssh/.pub

手动信任关键验证策略如下:

<块引用>

检查远程密钥是否与当前标记为受信任的密钥匹配 这位主持人。

根据配置,密钥将被自动信任 第一次连接,否则将要求授权用户批准 钥匙。将需要授权用户批准任何新密钥 由远程主机提供。

需要具有 Computer.CONFIGURE 权限的用户才能授权密钥 在第一次连接到该主机之前出现 将允许建立连接。

如果未启用此选项,则首先显示的键 此主机的连接将被自动信任并允许 所有后续连接,无需任何人工干预。

我的问题是:如果我在“手动信任密钥验证策略”中自动信任远程(无需手动批准第一次连接),那么它与“手动提供的密钥验证”之间的实际区别是什么?策略”?

是否在提供的策略中,公钥必须存在于编排器节点和代理中?

1 个答案:

答案 0 :(得分:0)

<块引用>

那么它与“手动提供的密钥验证策略”之间的实际区别是什么?

不同之处在于 SSH 私钥的来源。

手动提供密钥验证策略

您直接在选项配置中复制密钥:

https://raw.githubusercontent.com/jenkinsci/ssh-slaves-plugin/master/doc/images/hkvs-manual-key.png

手动信任密钥验证策略

enter image description here

(这是我通常启用的选项)

密钥是从远程服务器 py -m venv env

获取的
相关问题