Ansible“缺少 sudo 密碼”,即使啟用了無密碼 sudo

Ansible“缺少 sudo 密碼”,即使啟用了無密碼 sudo

我的 sudoers 文件中有

ALL            ALL = (ALL) NOPASSWD: ALL

這允許任何人無需輸入密碼即可使用 sudo。我確認當我 ssh 進入機器時我可以在沒有密碼的情況下使用 sudo 。

然而,當我嘗試在其上運行劇本時,我收到錯誤“缺少 sudo 密碼”。

我用來運行的命令是

ansible-playbook -i inventory.yaml common_install.yaml --limit vpn.lan.example.com -vvv

我運行了相同的命令,將其限制為不同的主機,該主機具有相同的 sudo 規則,並且都運行 Ubuntu 20.04,並且它可以正常工作。但不適用於該主機。

為什麼行不通?

答案1

您可能尚未使用使用者名稱和密碼值/檔案填入 group_vars 或 host_vars 目錄。

group_vars 目錄的範例:

節點.yml

ansible_port: 22
ansible_user: username
ansible_password: password
ansible_connection: ssh
ansible_become_pass: otherPassword

注意:group_vars/host_vars 目錄中的變數包含以下文件僅變數不要包含該vars:關鍵字,否則您的其他變數將被忽略。

相關內容