Hi all
I’m having a bit of an issue with “become”. This server actually asks for the root password when sudo is invoked. Let me re-state: Not the login user password, the root password. When I login “manually” I see this:
$ sudo su -
[sudo] password for root:
I’m trying to use the ‘su’ become plugin. I keep getting
'FAILED! => {"msg": "Timeout (12s) waiting for privilege escalation prompt:'
when trying to use become.
group_vars looks like this:
---
vars:
ansible_become_method: 'su'
ansible_user: 'login_user'
ansible_become_exe: 'sudo -p "Password: " su -' ### saw this somewhere...
and the host vars looks like this:
---
vars:
b: "server-id"
c: "project-id"
r: "aws-region"
ansible_host: "{{c}}_{{b}}"
ansible_ssh_private_key_file: "~/.env/sec/ssh/w/{{c}}.{{r}}.pem"
ansible_become_password: "{{ lookup('passwordstore',
'services/aws/'+c+'/'+r+'/ec2/hosts/'+b+'/admin/root' ) }}"
Trying to run the most basic playbook ever (as root):
---
- name: linux.os_version
hosts: project-id_server-id
become: true
become_method: 'su'
gather_facts: false
tasks:
- name: get os version
ansible.builtin.shell: "pp=$(cat /etc/os-release | grep -i pretty) ; echo $pp | cut -d'=' -f2"
register: osver
- ansible.builtin.debug: var=osver.stdout_lines
That play is invoked like this:
ansible-playbook $ansible_dir/linux.os_version.yml
Been trying different variations of this and always getting the same result.
The passwordstore plugin, I have tested, and I know it works.
ansible [core 2.17.3]
config file = /home/user/ansible/ansible.cfg
configured module search path = ['/home/user/ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
ansible python module location = /usr/lib/python3.12/site-packages/ansible
ansible collection location = /home/user/ansible/collections:/usr/share/ansible/collections
executable location = /usr/bin/ansible
python version = 3.12.5 (main, Aug 9 2024, 08:20:41) [GCC 14.2.1 20240805] (/usr/bin/python)
jinja version = 3.1.4
libyaml = True
If any kind soul would have it in them to tell me what I’m doing wrong, that would be most appreciated.
Thanks