【问题标题】:Understanding privilege escalation in ansible了解 ansible 中的权限提升
【发布时间】:2017-05-19 10:00:50
【问题描述】:

我是 ansible 的新手,我一直在玩权限提升,但我对它的工作原理有点困惑,如果我要将任务定义为

- name: Do something
  become: yes
  command: some command

我将在以 root 用户身份登录时执行此任务,但如果我不希望这样做,只是希望它在远程计算机上表现得像 sudo some command 而仍然以当前用户,是不是就这么写出来这么简单

- name: Do something
  become: yes
  become_method: sudo
  command: some command

或者我是否必须将上面的行与 become_user 一起使用:{{ ansible_user }}

【问题讨论】:

    标签: ansible


    【解决方案1】:

    Ansible 始终以 remote_user 身份登录到目标 ssh 服务器。
    如果您使用become: yes Ansible 调用sudo(或其他提权工具)以become_user 运行命令。

    如果您使用 -vvv 详细程度执行 Ansible,您会看到它完全按照您的意愿行事:以当前用户身份登录,然后以 sudo command 登录。

    唯一的一点是,Ansible 使用 python-wrappers 来执行命令,如果你需要在没有任何包装器的情况下准确执行sudo some command,你可以使用:

    - name: Do something
      become: yes
      raw: some command
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-09-24
      • 1970-01-01
      • 2011-08-27
      • 2013-09-08
      • 1970-01-01
      • 2015-01-11
      • 1970-01-01
      相关资源
      最近更新 更多