Sudo
Ansible ssh 作為使用者並執行具有 root 權限(期望類似)
我必須管理大量主機,其中只有一個使用者能夠從 SSH 訪問(我們稱他為 foo),然後必須以 root 身份登錄才能執行特權命令。
Foo 使用者沒有任何類型的 sudo 權限,所以我被迫以 root 身份登錄來執行特權命令。我實際上正在使用一個期望腳本來完成這項工作(ssh 以 foo 身份登錄,通過 su 以 root 身份登錄)並且我想切換到 Ansible。我知道我可以創建一個新使用者並給他 sudo 權限,或者基本上給 foo sudo 權限,但是可以用 Ansible 做我正在做的同樣的事情嗎?
我想以 foo 身份進行 ssh 連接,然後以 root 身份執行 playbooks 或任何類型的 adhoc 命令。我在 Ansible 文件中沒有找到任何關於此的資訊,所以我在這裡詢問是否有人已經接受過這種審訊。
使用
ansible
,您可以使用sudo
或su
:- hosts: example.com gather_facts: False su: yes su_user: root tasks: - shell: whoami
您也可以從命令行執行此操作:
ansible-playbook --su --su-user=root --ask-su-pass playbook.yml
此功能自此拉取請求以來一直可用,並且存在於目前 1.6.6 中。