2017-04-26 131 views
0

我想在服務器上創建私鑰和公鑰,當我手動執行時,它會要求我按「enter」三次,並且需要選擇「 y「一次。我可以使用ansible運行相同的命令嗎?如果是,如何管理我們在服務器上運行時手動按下的「輸入」。任何幫助將是偉大的繼續。我們如何使用ssh模塊運行「ssh -keygen」命令

下面

是我試圖

- hosts: localhost 
    tasks: 
    - name: "Run ssh commands to create new ssh keys" 
    shell: ssh-keygen -f /home/dp794d/id_rsa -t rsa -q -N "" 
    args: 
     creates: /home/dp794d/.ssh/id_rsa 
    with_lines: cat "/home/capio/ansible/pmossWipm/day1/logs/testIP.txt" 

的劇本,我提示以下錯誤: -

failed: [localhost] (item=130.6.50.132) => {"changed": true, "cmd": "ssh-keygen -f /home/dp794d/.ssh/id_rsa -t rsa -q -N \"\"", "delta": "0:00:00.248041", "end": "2017-04-26 14:41:36.361705", "failed": true, "item": "130.6.50.132", "rc": 1, "start": "2017-04-26 14:41:36.113664", "stderr": "open /home/dp794d/.ssh/id_rsa failed: Permission denied.", "stdout": "Saving the key failed: /home/dp794d/.ssh/id_rsa.", "stdout_lines": ["Saving the key failed: /home/dp794d/.ssh/id_rsa."], "warnings": []} 
+0

'「stderr」:「打開/home/dp794d/.ssh/id_rsa失敗:權限被拒絕。」 - 我認爲您有文件系統權限問題,例如,當'〜/ .ssh'是偶然擁有的(並且是0700)並且您的playbook以普通用戶身份連接時。 – drdaeman

回答

1

看來你有兩方面的問題

  1. 一個Permission denied/home/dp794d/.ssh/id_rsa

    • 當用戶運行playbook無法訪問上述文件或目錄時,您會看到此內容。考慮使用become:來解決上下文不匹配問題。
  2. 鍵盤輸入

注:與單或雙引號嘗試,直到你得到想要的效果。

+0

感謝您的幫助,它工作得很好! 真的很感謝:) – nishant

+0

很酷。如果這對你有幫助,將其標記爲已解決,以便其他人可以更容易地找到它(並且我獲得了一些急需的重要點,以便我可以在此網站上進行更多互動)。 –