Description of problem: Failed to run remote execution command with sudo when ssh password contains the regex meta-characters. No command output or error message is printed on the screen but the job finished successfully. Version-Release number of selected component (if applicable): 6.6 Steps to Reproduce: 1. Create a user called "rexuser" in a target host with a password of "redhat123(". Give sudo privilege to it. 2. In Web UI -> Settings -> RemoteExecution -> Set SSH User as "rexuser" 3. In Web UI -> Monitor -> Jobs -> Run Job -> fill in the following job details -------------------------------------------- Job category: Command Job template: Run Command (SSH Default) Search Query: <the target host> Command: Any command that will print output, such as "date" or "uname" etc Effective user: root Password: redhat123( Sudo password: redhat123( -------------------------------------------- 4. Click submit to run the job 5. Observe the output. Actual results: Command output is not printed on screen (see below) but the job finished without error. --------------------- 1: rex login: 2: Exit status: 0 --------------------- Expected results: Command output is printed on screen
Created redmine issue https://projects.theforeman.org/issues/30237 from this bug
Moving this bug to POST for triage into Satellite since the upstream issue https://projects.theforeman.org/issues/30237 has been resolved.
Fix is in Satellite 6.9 SNAP 1 with tfm-rubygem-foreman_remote_execution_core-1.3.1-1.el7sat.noarch
Verified on Satellite 6.9 snap 2, using the steps from the problem description
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 (Moderate: Satellite 6.9 Release), and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHSA-2021:1313