与“ sudo su-”

时间:2020-03-04 21:25:32

标签: ansible

(对此已经有一些问题,但是没有解决方案对我有用)

在我使用的服务器上,我们必须“ sudo su-webapps”,然后将命令作为webapps运行。 我相信Ansible没有提供执行此操作的本地方法(只有sudo可用,但是sysadmins限制了我可以运行它的命令列表,su可以与Ansible一起使用,但不能在服务器上单独运行)。

我尝试过 https://www.coveros.com/ansible-privledge-escalation-using-sudo-su/

[privilege_escalation]
become_exe=sudo su -

使用剧本:

---
- hosts:
    - test
  become: yes
  become_user: webapps
  become_method: su
  tasks:
  - name: Updates file
    copy:
      src: a.txt
      dest: dest/a.txt

运行它会给出:

SSH:EXEC SSH -vvv -C -o ControlMaster =自动-o ControlPersist = 60秒-o KbdInteractiveAuthentication =否-o PreferredAuthentications =带麦克风的gssapi,gssapi-keyex,基于主机的公钥 -o PasswordAuthentication =否-o'User =“ myUser”'-o ConnectTimeout = 10 -o ControlPath = / Users / lmoreau / .ansible / cp / d895b40f7e -tt myServer'/ bin / sh -c'“'”'sudo su-webapps -c'“'”“”“”“”“”“” / bin / sh -c '''''''''''''''''''''''1' '“'回声 成为成功-nxilvumwmfikgyuisutwiwobidrgqpao; / usr / bin / python /var/tmp/ansible-tmp-1583355901.6967812-200466745901442/AnsiballZ_setup.py'“'”'“”“”“”“”'“'”“”“”“”“”“”“ ''''''''''''''''''' &&睡眠0'“'”''

...

“ msg”:“超时(12秒),等待特权升级提示:\ r \ nWe 相信您已经收到了当地的常规演讲 系统\ r \ n管理员。通常可以归结为这三个 事情:\ r \ n \ r \ n#1)尊重他人的隐私。\ r \ n#2)思考 在您键入之前。\ r \ n#3)强大的力量带来了巨大的成功 责任。\ r \ n \ r \ n“

另一种尝试:

[privilege_escalation]
become_exe=’sudo su - ‘

“ module_stdout”:“ / bin / sh:’sudo:未找到命令\ r \ n”, “ msg”:“模块故障\ n请参阅stdout / stderr了解确切错误”,

在不覆盖begin_exe的情况下:

  • “ su”方法使“超时(12秒)等待特权升级” 提示:“

  • “ sudo”方法给出“ msg”:“缺少sudo密码”

注意:我没有我想要成为的帐户的密码,并且不应该拥有任何密码。

我如何做与Ansible手工做的一样?

1 个答案:

答案 0 :(得分:0)

使用这个:

- hosts: application
  become: yes
  become_exe: "sudo su - webapps"
  become_method: su
  tasks: