即使在 public 键中手动添加到 authorized_keys 后也无法连接到 AWS 实例

Unable to connect to AWS instance even after manually adding in public key to authorized_keys

我无法 运行 ansible-playbook 或在 AWS 实例上使用 ansible ping。但是,我可以毫无问题地进入实例。我的主机文件是这样的: [instance] xx.xx.xxx.xxx ansible_ssh_user=ubuntu ansible_ssh_private_key_file=/home/josh/Ansible/Amazon/AWS.pem

我不应该使用直接路径吗?我正在尝试使用 ansible 将 apache 安装到服务器上。在 AWS 控制台的安全组中,我允许端口 22 和 ansi 中的所有传入 ssh 流量 service: name=apache2 state=started`ble 尝试通过端口 22 ssh,所以这不应该是问题所在。 sshing 到我没有注意到的实例背后是否有一些重要的想法。我尝试遵循此 post: Ansible AWS: Unable to connect to EC2 instance 但无济于事。

尝试:ansible-playbook yourplaybookname.yml --connection=local

ansible 默认为 ssh

确保里面 ansible.cfg ***

private_key_file = path of private key(server-private-key)


并且在主机中不要更改默认的 authorized_keys 文件,更好的方法是创建一个用户,为该用户创建 .ssh 目录,然后在里面创建一个名为 authorized_keys 的文件并粘贴您的服务器-public 键

$~/.ssh/authorized_keys