Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jenkins SSH身份验证:手动信任与手动提供的密钥_Jenkins_Ssh - Fatal编程技术网

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

Jenkins SSH身份验证:手动信任与手动提供的密钥,jenkins,ssh,Jenkins,Ssh,Jenkins“”上的Github文档指定了几种SSH密钥验证策略,其中两种是“手动提供的密钥验证策略”和“手动受信任密钥验证策略” 手动提供的密钥验证策略如下: 检查远程主机提供的密钥是否与 配置此连接的用户 此连接所需的SSH密钥。这把钥匙应该在钥匙盒里 形成算法值,其中算法是ssh rsa或ssh dss之一,以及 值是键的基本64编码内容。钥匙应该是 放在/etc/ssh/.pub中 手动受信任密钥验证策略如下: 检查远程密钥是否与当前标记为受信任的密钥匹配 这位主持人 根据配置的不同,

Jenkins“”上的Github文档指定了几种SSH密钥验证策略,其中两种是“手动提供的密钥验证策略”和“手动受信任密钥验证策略”

手动提供的密钥验证策略如下:

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

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

手动受信任密钥验证策略如下:

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

根据配置的不同,密钥将被自动信任 第一次连接或授权用户将被要求批准 钥匙。需要授权用户批准任何新密钥 由远程主机呈现的

需要具有计算机的用户。配置权限以授权密钥 在第一次连接到此主机时在 将允许建立连接

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

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

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

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

区别在于私有SSH密钥的来源

手动提供的密钥验证策略 您可以直接在选项配置中复制密钥:

手动可信密钥验证策略

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

密钥是从远程服务器获取的
~/.ssh/id\u rsa

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

区别在于私有SSH密钥的来源

手动提供的密钥验证策略 您可以直接在选项配置中复制密钥:

手动可信密钥验证策略

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


密钥是从远程服务器获取的。ssh/id\u rsa

确定吗?这是否意味着在该策略中代理也必须持有私钥?它已经在主机上(作为凭据添加)。@shibel只有在您的私钥受密码保护时才需要代理。如果我太慢了,很抱歉。因此,如果我没有启用密码短语,基本上唯一的区别是,在手动提供的策略中,私钥只是粘贴在文本框中,而在手动受信任的情况下,私钥保存为Jenkins中的凭据对象?@shibel否,在第二种情况下,密钥是在远程服务器上找到的密钥(因此需要Jenkins credential对象使用远程帐户及其密码连接到服务器,以便访问
~remoteAccount/.ssh/id\u rsa
:私钥。@shibel与第一种情况不同,在第一种情况下,您不通过在远程服务器上读取私钥,而是直接在代理设置中获取私钥,在SSH密钥字段中。是否确定?这是否意味着代理在此策略中也必须持有私钥?它已在主服务器上(作为凭据添加)@shibel代理仅在您的私钥受密码保护的情况下才需要。抱歉,我的速度太慢了。因此,如果我没有启用密码,基本上唯一的区别是,在手动提供的策略中,私钥只是粘贴在文本框中,而在手动受信任的情况下,它会保存为Jenkins中的凭据对象?@shibel否,在第二种情况下,密钥是在远程服务器上找到的密钥(因此需要Jenkins credential对象使用远程帐户及其密码连接到服务器,以便访问
~remoteAccount/.ssh/id\u rsa
:私钥。@shibel与第一种情况不同,在第一种情况下,您不通过在远程服务器上读取私钥,而是直接在代理设置中获取私钥,在SSH密钥字段中。