![Ansible „fehlendes Sudo-Passwort“, auch wenn passwortloses Sudo aktiviert ist](https://rvso.com/image/760959/Ansible%20%E2%80%9Efehlendes%20Sudo-Passwort%E2%80%9C%2C%20auch%20wenn%20passwortloses%20Sudo%20aktiviert%20ist.png)
Ich habe in meiner sudoers-Datei
ALL ALL = (ALL) NOPASSWD: ALL
Damit kann jeder sudo verwenden, ohne ein Passwort einzugeben. Und ich habe bestätigt, dass ich sudo ohne Passwort verwenden kann, wenn ich mich per SSH mit dem Computer befasse.
Wenn ich jedoch versuche, ein Playbook darauf auszuführen, erhalte ich die Fehlermeldung „Sudo-Passwort fehlt“.
Der Befehl, den ich verwende, ist
ansible-playbook -i inventory.yaml common_install.yaml --limit vpn.lan.example.com -vvv
Ich habe denselben Befehl ausgeführt und ihn auf einen anderen Host beschränkt, der dieselbe Sudo-Regel hat, und beide verwenden Ubuntu 20.04, und auf diesem Host funktioniert es. Funktioniert aber nicht auf diesem Host.
Warum funktioniert es nicht?
Antwort1
Möglicherweise haben Sie die Verzeichnisse „group_vars“ oder „host_vars“ nicht mit den Werten/Dateien für Benutzername und Passwort gefüllt.
Ein Beispiel für ein group_vars-Verzeichnis:
nodes.yml
ansible_port: 22
ansible_user: username
ansible_password: password
ansible_connection: ssh
ansible_become_pass: otherPassword
Hinweis: Die Variablen in den Verzeichnissen group_vars/host_vars enthalten Dateien mitnur VariablenSchließen Sie das Schlüsselwort nicht ein vars:
, da Ihre anderen Variablen sonst ignoriert werden.