Ansible ssh作为用户和执行有root(期待像)

Modified on: Thu, 17 Oct 2019 05:40:02 +0800

我必须管理大量主机,其中只有一个用户能够从SSH访问(让我们称之为foo),然后必须以root身份登录才能执行特权命令。

Foo用户没有任何sudo权限,因此我被迫以root身份登录以执行特权命令。我实际上正在使用expect脚本来完成这项工作(ssh登录为foo,通过su以root身份登录),我想切换到Ansible。我知道我可以创建一个新用户并给他sudo权限或者基本上给予foo sudo权限但是我可以做与Ansible一样的事情吗?

我想将ssh连接作为foo,然后以root身份执行playbooks或任何类型的adhoc命令。我没有在Ansible文档中找到任何有关这方面的信息,所以我在这里询问是否有人已经进行了这种审讯。

作者:Arka

最佳答案

使用ansible,您可以使用sudosu

- 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中0.6。

作者:dawud

相关问答

添加新评论