如何使用NOPASSWD选项为sudo用户配置作业执行?

时间:2016-10-04 06:06:39

标签: rundeck

我尝试从rundeck作业远程运行另一个用户的命令。 Rundeck为升级权限提供sudo login \ passwod机制。 在我的远程服务器上的sudoers文件NOPASSWD选项。在这种情况下我如何配置rundeck作业?

我的节点配置:

<project>
        <node name="testServer"
                type="Node"
                description="testNode"
                hostname="IP_ADDRESS"
                username="${option.Login}"
                ssh-authentication="password"
                sudo-command-enabled="true"
                ssh-password-option="option.Password"
                />

</project>

作业中的示例命令成为另一个用户:

sudo /bin/su suuser -

尝试执行后出错:

Remote command failed with exit status -1
08:57:13            Sudo execution password response failed: Failed waiting for input prompt: Expected input was not seen in 5000 milliseconds
08:57:13            Failed: NonZeroResultCode: Remote command failed with exit status -1

2 个答案:

答案 0 :(得分:0)

我在节点中添加了以下三个属性,它似乎可以工作:

sudo-command-enabled="true"

sudo-prompt-pattern=""

sudo-command-pattern="^sudo.*"

答案 1 :(得分:0)

您必须在“编辑项目配置文件”

中设置以下属性
project.ssh-authentication=password
project.ssh-keypath=/home/rundeck/.ssh/id_rsa
project.ssh-password-storage-path=keys/xyz.password
project.sudo-command-enabled=true
project.sudo-password-option=option.jobPassword
project.sudo-password-storage-path=keys/xyz.password
project.sudo-prompt-pattern=^Password\:.*