如何在具有无法连接到服务器的用户的ansible playbook的远程服务器上执行命令

时间:2013-12-21 11:02:25

标签: ssh ansible

她是我的工作流程。

  
    

ssh user1 @ remote-server

         

su - user2

         

somme commande只有user2才能执行

  

user1不能sudo user2,user2没有ssh访问权限。

我需要使用ansible playbook执行此操作,我无法更改远程服务器上的设置。

1 个答案:

答案 0 :(得分:0)

您可以使用shell或命令任务,但您还需要命令expect,因为su需要交互式输入密码:

- name: Run a su user2 command
  shell: suCommand.sh

其中suCommand.sh是:

#!/usr/bin/expect
spawn su -c ls user2
expect "Password: "
send -- "user2password\r"
interact