Jenkins在运行Ansible游戏手册时的权限问题

问题描述:

在运行Ansible游戏手册时,Jenkins的权限问题。 控制台登录: Console Log says permission denied 当我运行从腻子一样直接运行是: 腻子日志:Putty executes successfullyJenkins在运行Ansible游戏手册时的权限问题

+0

在Jenkins中运行时,您是否像使用Putty一样使用相同的用户? – GreensterRox

+0

如果你从jenkins运行它,jenkins用户的ssh密钥(可能在'〜jenkins/.ssh/.id_rsa'中)必须被你试图部署到的guest虚拟机允许。当你在本地运行它时(我假设你在引用'putty'时会这样做),它将使用你的ssh密钥。因此,将jenkins用户的公共密钥添加到客户 – Rik

+0

上的'〜/ .ssh/authorized_keys'文件中,您应该使用-u root修改'ansible-playbook'命令,并使用'--key -file =' –

SSH到远程服务器,并做了sudo cat /var/log/secure|grep sshd获得和正在发生的事情的洞察力。

假设它是一个权限问题,请确保您的远程詹的用户~/.ssh文件夹,它里面的文件(通常是有的authorized_keys文件存在)有充分的所有权和正确的权限。

詹金斯远程用户应拥有该目录的所有者和组的一部分:

sudo chown -R jenkins.jenkins_group ~/.ssh

设置上的SSH目录的权限:

sudo chmod 700 ~/.shh

,并设置对您的SSH密钥文件的权限:

sudo chmod 600 ~/.ssh/authorized_keys