2016-04-18 10 views
1

私はansible脚本を実行しようとしています使用してからansible:プロンプトが表示されたら、防ぎsudoを

ansible-playbook -i myserver.com, ansible/playbooks/myplaybook.yml -vvv 

をしかし、それは私がをsudoの権限を持っていないリモートサーバー上のsudoコマンドを実行しようとするだけでハングパスワードの入力:

<myserver.com> ESTABLISH CONNECTION FOR USER: my_username on PORT 22 TO myserver.com 
<myserver.com> REMOTE_MODULE setup 
<myserver.com> EXEC /bin/sh -c 'mkdir -p $HOME/.ansible/tmp/ansible-tmp-1460997867.84-241373750954463 && chmod a+rx $HOME/.ansible/tmp/ansible-tmp-1460997867.84-241373750954463 && echo $HOME/.ansible/tmp/ansible-tmp-1460997867.84-241373750954463' 
<myserver.com> PUT /var/folders/31/y5npmcgn7777f5063rgjf6_hc7rppt/T/tmptR7HbV TO /home/my_username/.ansible/tmp/ansible-tmp-14609823867.84-241373750954463/setup 
<myserver.com> EXEC /bin/sh -c 'sudo -k && sudo -H -S -p "[sudo via ansible, key=afasdfakjdfasdgrefavf] password: " -u root /bin/sh -c '"'"'echo BECOME-SUCCESS-mwpxbbscfnbmmgqspgerjcwapghlvcbo; LANG=C LC_CTYPE=C /usr/bin/python /home/my_username/.ansible/tmp/ansible-tmp-14609823867.84-241373350954463/setup; rm -rf /home/my_username/.ansible/tmp/ansible-tmp-14609823867.84-241373350954463/ >/dev/null 2>&1'"'"'' 

failed: [myserver.com] => {"failed": true, "parsed": false} 
[sudo via ansible, key=afasdfakjdfasdgrefavf] password: 

脚本は、私が何かを明らかに欠けている場合ので、私はapolgozeので、私は何が起こっているかわからないと、これはAnsibleと私の初めての経験で、私のチームの他の人のために働くようです。

--- 
- hosts: all 

    vars_prompt: 
    - name: "my_brancyh" 
    prompt: "My branch:" 
    default: "dev" 
    private: no 
    - name: "password" 
    prompt: "Enter password" 

    vars: 
    proxy_url: "my_proxy" 

    environment: 
    PASSWORD: "{{password}}" 
    HTTP_PROXY: http://{{ lookup('env', 'USER') }}:{{password}}@{{proxy_url}}:8099 
    HTTPS_PROXY: http://{{ lookup('env', 'USER') }}:{{password}}@{{proxy_url}}:8099 

    tasks: 
    - name: create my environment 
    shell: "{{item}}" 
    with_items: 
     - /opt/anaconda/anaconda/bin/conda create -y -p ~/envs/alvin --no-default-packages --no-pin python==2.7.9 
     - mkdir ~/envs/my/src 
+0

どのように役立つかを知るには、/ playbooks/myplaybook.ymlの最初の行を追加してください。 –

+0

申し訳ありませんが、私はそれが必要なものが不足している場合は私に教えて、そこから独自のもののいくつかを浄化していた。 – Chris

+1

私はちょうど彼が1500ウェブサイトをホストした彼の危険なネットワーク上で 'rm -rf /'を実行している人に関する記事を読んでいる(そしてバックアップもネットワーク上にあった)...男の子はsudo –

答えて

1

多分あなたの環境がグローバルパラメータとしてsudoを設定しているあなたの/etc/ansible/ansible.confまたは〜/ .ansible.cfgを確認してください。

+0

これは正しい軌跡のようですが、 'ansible-playbook -i myserver.com、-u myuser ansible/playbooks/myplaybook.yml -vvv'を実行しても、sudoコマンドを実行しようとしても同じ問題が発生します。ユーザーはローカルでは問題ないようですが、リモートマシンではまだルートを使用しようとしているようです。 – Chris

+1

/etc/ansible/ansible.confを確認してください。あなたの環境がsudoをグローバルパラメータとして設定している可能性があります。 –

+0

それはそれでした。私は '〜/ .ansible.cfg'を変更したパッケージを別の時点で使用していましたが、ユーザーをrootに設定していました。それを答えにするなら、私はそれを受け入れます。 – Chris

1

Ansibleは、あなたがそれをしたい脚本に指定した場合に(sudoまたはbecomeディレクティブを経由して)sudoを使用しようとし、またはコマンドライン(--sudoまたは--become)に指定されたとき。あなたの例ではこれらのことのいずれかが表示されませんが、これは縮小されたプレイブックだと言います。内部情報を削除するときにタスクから削除しましたか?

+0

私はsudoコマンドを削除していないし、プレイブックには何も表示されませんが、そこに何かがあるかどうかを確認するために、一度に数行を実行しようとします。私が問題を抱えている唯一の人であるという事実は、私の環境と何か関係があるのか​​どうか疑問に思うので、今もそれをチェックしています。 – Chris

関連する問題