我可以连接我的 AWS EC2 实例
ssh -i "pizdform.pem" [email protected]
Last login: Tue Feb 21 12:36:50 2023 from ...
我尝试了 Ansible ping
cat test-project/hosts.ini
[web]
52.206.23.6
ansible -i test-project/hosts.ini web -m ping -u ec2-user
ping 失败
52.206.23.6 | UNREACHABLE! => {
"changed": false,
"msg": "Failed to connect to the host via ssh: [email protected]: Permission denied (publickey,gssapi-keyex,gssapi-with-mic).",
"unreachable": true
}
为什么?
答案1
错误消息显示“权限被拒绝”。这告诉我,您没有使用正确的 SSH 身份文件来连接到您的目标(该pizdform.pem
文件作为参数传递给-i
裸 SSH 命令中的选项)。使用--private-key PRIVATE_KEY_FILE
选项来ansible
使用 PEM 文件,您应该能够正常连接。您还可以使用ssh-agent
将标识存储在内存中,从而避免使用--private-key
选项ansible
。
答案2
我开始学习ansible,最近遇到了这个问题。找到了附加ansible_user=username
在清单文件中的主机名后面的解决方案。之后我收到了 SUCCESS 输出,希望这对您有用。