权限被拒绝时运行Ansible特设命令

问题描述:

我试图通过SSH Ubuntu的LTS 14台服务器上运行的Ansible特设命令:权限被拒绝时运行Ansible特设命令

ansible all -m ping -u myusername 

不过,我得到以下错误信息:

FAILED => SSH Error: Permission denied (publickey,password)

当我尝试运行了标志的广告命令要求输入密码,它的工作原理:

ansible all -m ping -u myusername --ask-pass 

absence.ugent.be | success >> { 
"changed": false, 
"ping": "pong" 
} 

有谁知道为什么牛逼他的命令不工作,没有要求我的密码?我该如何解决这个问题?

更新:如纽豪斯的建议,我想从我的ssh密钥文件与删除密码短语:

ssh-keygen -p [-P old_passphrase] [-N new_passphrase] [-f keyfile] 

但是这并没有解决它。奇怪的是,我仍然可以成功运行

ansible all -m ping -u myusername --ask-pass 

用我的旧密码短语,甚至创造新的SSH密钥之后。

感谢您的帮助,
安东尼

+0

为远程主机设置基于密钥的身份验证。 –

+0

Stack Overflow是编程和开发问题的网站。这个问题似乎与题目无关,因为它不涉及编程或开发。请参阅帮助中心的[我可以询问哪些主题](http://*.com/help/on-topic)。也许[超级用户](http://superuser.com/)或[Unix&Linux堆栈交换](http://unix.stackexchange.com/)会是一个更好的地方。 – jww

你的SSH密钥由密码保护。通过添加--ask-pass,ansible会要求输入此密码(不是您的登录密码)。

如果您希望在不输入密码的情况下工作,请拨打remove the passphrase from your SSH key

+0

嗨neuhaus,非常感谢。我如何从我的SSH密钥中删除密码? – Toontje

+0

点击我刚刚在我的答案中添加的链接。或者下一次,使用搜索引擎 - 它比输入评论到*更快! – neuhaus

+1

我使用ssh-keygen -p删除了密码短语,但没有解决它。 – Toontje