Description of problem:
To be able to run commands that require escalated privileges (sudo), it is currently required to set sudo rule "NOPASSWD" for the SSH user on the target host. (For Red Hat IdM users, the same thing can be achieved with a sudo rule with the sudo option "!authenticate".)
"NOPASSWD" (i.e. passwordless sudo) is not acceptable in all environments and therefore it would be useful to be able to provide a password used for privilege escalation at the remote host.
As a reference, this would be similar to the "--ask-become-pass" option in Ansible.
Version-Release number of selected component (if applicable): 6.2.12
How reproducible: Always
Steps to Reproduce:
1. Setup REx with a user that is not root, e.g. by following https://access.redhat.com/solutions/2650071
2. Notice that you have to set "test-user ALL=NOPASSWD: ALL" in your sudoers config
In the settings for REx (Administer -> Settings -> RemoteExecution) there are currently 3 settings concerning user and privilege escalation:
My suggestion is to add another setting, e.g:
That password is then used to escalate privileges at the remote host after authenticating with the user specified in "remote_execution_ssh_user".
Created redmine issue http://projects.theforeman.org/issues/21731 from this bug
Upstream bug assigned to firstname.lastname@example.org
Moving this bug to POST for triage into Satellite 6 since the upstream issue http://projects.theforeman.org/issues/21731 has been resolved.
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.
For information on the advisory, and where to find the updated
files, follow the link below.
If the solution does not work for you, open a new bug report.