我在计算机M1上有一个与用户XXX一起运行的主人。我想在用户YYY的机器M2上运行一个奴隶。
我在两台机器之间有一个私钥 - 公钥,所以我可以这样做:
[XXX@M1]$ ssh YYY@M2
我已经联系了。
在Jenkins中,我为用户名M2创建了凭据,并从Jenkins master~ / .ssh 中选择了选项。但是,当我尝试连接时,它失败了:
[04/18/13 14:58:11] [SSH] Opening SSH connection to M2:22.
ERROR: Failed to authenticate as YYY with credential=c2cdc4dd-cb39-4f15-8329-033933ad5621
java.io.IOException: Publickey authentication failed.
[04/18/13 14:58:11] [SSH] Authentication failed.
hudson.AbortException: Authentication failed.
令人惊讶的是,如果我使用选项直接输入并从~/.ssh/id_dsa
复制粘贴私钥,那么它可以正常工作。
我做错了什么?
答案 0 :(得分:2)
偏好顺序为:id_rsa,id_dsa,identity
如果存在,则需要〜/ .ssh / id_rsa,如果缺少id_rsa,则只返回〜/ .ssh / id_dsa。
如果您有多个密钥并且需要明确指定一个密钥,建议您指定文件的路径或使用copy&粘贴